Heroes Of Hawks Haven
I have been making RPG called Heroes of Hawks Haven slightly over two years now. Game is going to be classical or old fashioned RPG in gaming style. There is not going to be arrow or blinking lights showing what to do next, no automap. Also places where you can enter in game are not restricted by level or character skill. So it is possible to enter too weak into very dangerous dungeon. Game has party up to 4 characters. Main character is created in the beginning of the game. Other 3 characters can be join to party if wanted. Game only ends if main character dies. There are 6 characters whom can join the party.
I have tried to make quests more interesting and variations than plain killing monsters. Many quests have optional solving possibilities or even different endings. In the very beginning of the game quests are quite simple and straightforwad since I was not learn how to use my own scripting language. Game also has special role playing system. There are three different roles which can chosen in game talks: Paladin of Good, Mercenary and Brutal Bully. So if character stays in same role over the whole game more role playing experience is gained. Some of the quest cannot be do if playing strictly according the roles, but that's role playing.
Other cool feature is that each of the character whom can join the party has their own solo quests. Currently I have done two out of six solo quests. Third one is started but not finished yet. Solo quests are small quest where character adventures as solo, which of course is much more difficult than adventuring in party. Specially if character is wizard whom is used to combat.
Characters does not have classes, game is based on skills: Unarmed, Melee, Ranged weapons, Dodging, Wizardy, Sorcery, Qi-Magic, Bartering, Diplomacy and Lock Picking. Then there are also perks which makes each character unique. There are currently 70 different perks. On first level two perks are gained after that every even level one perk is gained. Game has level limit on 20 levels.
Materials I have used from OpenGameArt.Org:
http://opengameart.org/content/mage-city-arcanos
http://opengameart.org/content/dark-fantasy-item-sprites
http://opengameart.org/content/old-music
http://opengameart.org/content/heroes-theme
http://opengameart.org/content/rpg-item-set
http://opengameart.org/content/rpg-sound-pack
And including all my own stuff which are here in OGA too.
Interested to try out go to:
Game is written with Java so OpenJDK or Oracle's Java is required. I haven't tried it out with Oracle's Java but should work fine. Java 6 works but at least on my computers Java 7 seems to perform better.
Game is freeware since it uses First Seed Material which only allows distributing their material for playing the game, so no source code available.
Very inspiring work, man. I've embarked on my own RPG title and would love to pick your brain sometime.
How many hours of work would you say you've put in over the last 2 years? I really like your interface scheme and fonts.
Thanks!
I haven't kept list amount of hours I have spend on Heroes of Hawks Haven. I have mostly done it on evenings and on weekends. Most time consuming is not programming but make the content. Conversations, quests and scripting take time.
Interface is done with Java components which all have custom look-like. Keeping single screen resolution helps designing the interface and having no issue if interface could scale. Custom fixed size fonts are great help when designing the interface. Linux, Mac OS and Windows they all have slightly different looking fonts and size which make interface designing more difficult.
Hi there!
This game looks promising. Keep it up! :D
This week I spent changing the MP3 player into Ogg player. That was not easy task at all. Only pure java Ogg decoder I could found was JOrbis which seemed to be old and coded someone who is more familiar with C than Java. Since it is only a decoder you have to do your player and example player which comes with that Jorbis is over 1000 rows long. I am just wondering how are other Java game programmers solved this problem?
After changing the MP3 to Ogg everything seemed to play fine when game was played from Eclipse. Problems arise when game was played from Jar. For some reason sound effects were not playing correctly. Single sound was playing fine, but when game should play many sound effect simultaneously for example in combat or ambient sounds only one is played fully another one is only played partially or not at all. Weird thing was that I had not change the sound player since I took use of JOrbis. SFX are still played as WAV files.
Solution I came up was that put the resource files out from the JAR file and mysteriously game plays sound effects just fine. Also loading times are now same as when playing directly from Eclipse. My guess is that Java's ZIP reader has some impact when reading resource files from the Jar.
Luckly everything seems to work now just fine and I can keep up creating the content. Next thing I am going to need is somekind of jungle trees.
Jungle trees are done now. Attached couple of pictures where they are used.
Next thing I am working on is the side quest for the treasure island. First I am going to do the quest itself without no dangers so it is more easier to test all the scripts that they work. I had to add new event for the game. Event now allows player dig ground. This way I can add puzzles where player needs to dig from certain position. Since all the movement is in the square it is possible to make puzzle where player need to calculate steps from one position to another. I could tell for example that from the Big rock take 10 steps to south and dig from there.
Screenshot-1387130069299-4888.png 362.7 Kb [0 download(s)]
Screenshot-1387130111687-6394.png 483.9 Kb [0 download(s)]
Good thing you are using java and not RPGMaker! Now it should be playable in FreeBSD/Linux
A long time ago i messed around with GTGE a java 2d gaming lib
Game is made with pure Java code so basicly it should run anywhere where you can run Java. I tried even with Raspberry Pi but Pi's Java is has issues with floating point so it was very very slow.
New version is available from
http://tuomount.kapsi.fi/download.html
Biggest changes are:
New map: Treasure island
Graphical effects will now illuminate the world
Ogg Player instead of MP3 player
Improved perfomance since resource files are not inside JAR
Project is moving forward. I have made two new maps, which still need to be tested though. Yesterday I made a small change which affected a lot in combat. I just added a short pause between NPCs movements. Previously all NPC movement happened in on single frame draw which made combat very fast but no very understandable. Now there is about 20 frames draw after each NPC whom is in combat.
Excellent work!
I'll try it.
This looks quite interesting and I am looking forward to playing it! I just wanted to let you know that your contact email on your website does not work!
I have obfuscated the email address so that spambots won't fill my email address. So you need to change at to @ and dot to . and finally remove all _
Yesterday I released a new version of Heroes of Hawks Haven 0.7.0 Alpha.
There are two new maps, two new monsters and main quest moves a bit forward. Statistical information about the game:
24 different quest which can be complete currently. 3 quest which cannot be complete.
237 items, 24 monsters, 76 speeches, 29 music and 85 sound effects.
Game also counts how many hours and minutes you have played and test game I played took 4.5 hours where I did 17 quests.
I took some screenshots from the latest version. First one is where fighting against wolfmen and casting a fireball. All spells also cause light effects for surroundings.
Second one where casting mindaffecting spell. Notice the character with sweat drop. It means that stamina is below the halfway. Same also applies for enemies.
Third one is where looting the dropped items. Equipments what enemies have are also dropped to ground.
Fourth one is where NPC is doing a task. Instead of creating animations for different task I use speech bubbles instead.
fight1.png 541.1 Kb [1 download(s)]
fight2.png 510.3 Kb [0 download(s)]
loot.png 447.2 Kb [0 download(s)]
hermit.png 484.1 Kb [0 download(s)]
Game is moving forward. For next 0.8.0 version I am going to make two new maps. First one is almost done, one simple quest is missing and then testing for scripts and finally add all the monsters. For the second map I am going to need a new tileset. Something look like a monastery. When that is done I'll post it here too.
I just finished another map for the Heroes Of Hawks Haven. Attached a picture of outside map. That map size is 120x120 tiles. Map also has three other sectors contain insides of the houses and caves.
roadtocloudtopmap.png 584.2 Kb [0 download(s)]
Lately I have been creating a new tileset for Heroes of Hawks Haven. That tileset is available in OGA too:
http://opengameart.org/content/limestone-tileset-32x32
I have also added simple shadow casting for certain objects. These shadows are generated along with other light sources so when I create maps I do not need to manually add these shadows. Since they are generated there are some minor problems like that all shadows always fill one whole square.
Couple of screenshots as example:
shadows1.png 421.5 Kb [2 download(s)]
shadows2.png 473.6 Kb [1 download(s)]
shadows3.png 437.4 Kb [0 download(s)]
shadows4.png 246.7 Kb [0 download(s)]
shadows5.png 329.9 Kb [0 download(s)]
shadows6.png 280.4 Kb [0 download(s)]
I just got 0.8.0 Alpha version done. Game is still working in progress and cannot played through...
New version is available from here:
http://tuomount.kapsi.fi/download.html
I think managed fix problem which caused problems when playing wav files from JAR. Trick was use wav files as URL resource not as InputStream. More detail explanation can be found from here:
http://stackoverflow.com/questions/20580025/java-io-ioexception-mark-res...
Then couple of screen shots from the new version:
Screenshot-1405235394250-1930.png 514.5 Kb [0 download(s)]
trouble.png 393.1 Kb [0 download(s)]
cloudtop1.png 435.9 Kb [0 download(s)]
blockage.png 486.8 Kb [0 download(s)]
very nice and inspiring. i haven't played many 2d RPGs but this one looks like could understand and enjoy it. imo the graphics are above par for a one person game and the interface is well understandable.
is this your first project? i guess not :) could you tell us an origin story for this project? any predecessor prototypes you had or so? did you have the engine already or how did the technology evolve? you say you rely on standard interface components but with custom skinning; did you use any other libraries (besides the ogg/mp3 stuff), e.g. for GFX. maybe a tiled loader or animation library?
keep it up!
Smonos, nice to hear that my project ins inspiring!
I did RPGs in late 90s and till 2005 or 2006. Then I had couple of years I did not do. But in 2011 I got an idea I'll do RPG. One requirement was to get good tileset and I found this FirstSeedMaterial. Almost year after that I found about OGA. Two previous RPG I was not able to finish since I was missing too much graphics. Original I was thinking about totally different RPG genre instead fantasy, but since there was not decent tileset for that. Then I decided that I go with fantasy.
I did not do any prototypes. I started from making a tile-editor which just reads PNGs and writes tiles into binary format. That format also contains information is tile blocked or not, what kind of light it emits and it's default positioning and possible animation. Next thing was do map editor which also uses the same engine as the game. Since editor also had animated character as "cursor" I was able to test animations and so on. Next thing was starting to do with game itself. Since engine was the same as in editor I had to add more game things like, inventory, talking, barteting, trading and fighting.
What I really like my engine is that I can do almost everything with editor. I do not have separate editor for scripts or talks like my previous engines had. That was pretty annoying to start a different editor. Editing talks was first quite a challenge how to do it. My older RPGs had either programed talks which require lot of work or simple keyword talks, something like in old Ultimas. Those of course allow player to cheat if they just know the correct keywords. This time I did something like in NWN talk editor. Each line what NPC can say is separate state and that state has player lines which can lead to another state. Each line can also have simple check if story variable equals something then go state A and if not got state B.
Each state can have actions which can give or take items from player, gain experience, add journal events or set story variable. All this is done with simple pull down menus and most of the talks are quite easy to do and require no programming.
GUI in game is done with Java SWING but custom skinning. Only library used is the OGG player. In the latest 0.8.0 version I did improvement for graphics. Instead of manually drawing each pixel of each tile I use Java's BufferedImages and when whole square is draw then I draw overlay shadow tile which puts correct light for the square. This dropped CPU usage from 30% to 50% depending on what is being drawn to screen.
Sorry for long text, but remember the past is kind of fun...
And thanks for you comments, smonos
Yesterday I got first time the end screen in game. End screen was same as when main character dies since actual end screen are still underwork. So yesterday I got working two out of three possible main plot endings and today I got final one working too. Last map is still missing finishing touches and then there are lot's of end screen to draw.
Still 20 more ending screen needs to be done. Only 7 more to draw and others I will do with game engine. One ending screen I also put use in adventure. Since this picture of island is shown if player totally skip visiting an island, so I decided it should be shown if player also visits in island but while adventuring.
Attached screenshot when party is leaving from the island.
I also found out why game was pausing in combat if there were multiple sounds playing same time. Reason was that while sound playing was starting it took about 20 ms and now screen was redraw in that time. Now in combat one NPC could use 4 sounds in on turn so game might pause for 100ms which is clearly visible.
I fixed this by instead of playing sound I just add the sound name into a list and then there is a separate thread going through that list and playing sounds from there. Now playing sounds and updating screen are indepent operations.
leavingisland.png 554.2 Kb [0 download(s)]
Heroes Of Hawks Haven 1.0.0 has been released!
https://tuomount.kapsi.fi/
Game is now possible to finish. There are three different endings. Playing time varies a lot how much side quests are done. I spent over 12 hours completing almost every side quests and second play time I skipped most of side quest I was able to complete game in 3,5 hours.
This is great. Nice work :-)
Wow! downloading right now, cant wait to play :D
Awesome game! good job! hope there will be future versions with Data Transfer.
Glad you like it! :)
Im glad I found such an amazing game with a lot of resources from OGA ^-^
Great to hear. Just curiosity, where are you at the game currently?
I was finally able to resolve how to capture sound from desktop application and I made a short video on Heroes of Hawks Haven. Video is available from my webpage: https://tuomount.kapsi.fi/videos.html
Well I made an unarmed character (i find it good but slightly underpowered because weapons for him are much harder to buy and find) I did all of the quests in the starting area then i just made it to the Hawks Haven place. Not very far, but amazing game, i love the mechanics.
Unarmed charaters can select perks which significantly boost unarmed damage. I played most of my test plays with unarmed characters so I did not need to look for good equipments. But do not worry there are magical equipments for all types of characters. You just need a bit of luck to find them.
haha. sadly I took out most of my luck so my guy would be a more effective "Dodgy Powerhouse"
but i'd say it fits my play style really well. also one question, in the video you seem to use a torch whenever you're in the dark, is there a benefit to it and negative effect of being in the dark?
Hey using character luck to decide how good items would be that is a good idea! Currently some of the items in game are randomized and that just random. But mixing characters luck sounds interesting idea. It could work even so that if character has bad luck you would get more cursed items.
If characters do not have dark vision perk then lights such as torches and wizard light give small bonus in combat. Also if target is well lit then that gives a small bonus. So using Fairy light spell to enemies does a small damage and small bonus to hit. That bonus is calculated on attack bonus showing next to axe and sword icon.
Darkness spell then give negative effect unless target character has a dark vision perk.
I just finished converting all the REFMAP tilesets into LPC ones. Since Heroes of Hawks Haven does not use REFMAP anymore I am able to publish it as open source. Source code is available in GitHub:
https://github.com/tuomount/JHeroes
Precompiled JAR file is available in same place as before:
https://tuomount.kapsi.fi/download.html
Source code also contains Map Editor and TileEditor for the JHeroes engine so fork it the project allows creating new RPG with it. Next thing I am going to make a tutorial how to make a new RPG with it.
smith.png 172.4 Kb [0 download(s)]
Screenshot-1447594293506-8110.png 176 Kb [1 download(s)]
Screenshot-1447709520815-4938.png 176.7 Kb [0 download(s)]
Wow, really great work, and so nice that you worked to get it released FOSS. I will look forward to trying this out! It looks like you've put a lot of work into making it.
I have started to make a tutorial for Map editor in JHeroes. Currently tutorial is in different branch since making testable tutorial map requires changes on code too.
Tutorial text itself:
https://github.com/tuomount/JHeroes/blob/tutorial/tutorial.md
Currently tutorial contains very basic what is required to change in code and basic map editing. There are also tutorials how to add simples events on map like sound effects, sign, doors and clocks.
I just finished adding races and different combat damage types to Heroes of Hawks Haven. For example Zombies are immune to poison and non-lethal damage but they have weakness for electric damage. First test game I died figthing against zombie and water elemental. I think this game is now more difficult than before.
Different combat damage should bring more tactical elements to combat.
All these changes are in master branch but I haven't built the release yet. I still need to do some testing before releasing.
I have finished doing the game buttons which are usable during the game. Attached couple of new screenshots.
Screenshot-1459543664123-517.png 233.8 Kb [0 download(s)]
Screenshot-1459543695919-4012.png 251.7 Kb [0 download(s)]
There is a new version available in GitHub and my webpage.
https://github.com/tuomount/JHeroes
https://tuomount.kapsi.fi/index.html
JHeroes now has different races and damage types making fighting a bit more interesting. Also full mouse support is implemented.