Hello Java Game Lovers!
I hope to be able to announce a new game very soon, called “Lord of the Dark Castle” that I created in Netbeans IDE with Java Swing. This YouTube link gives a short walk-through:
Only a few more weeks of iterations, mainly level graphics improvements and a couple of additions of skills/enchantments is left.
There is a Kickstarter page where you can pledge a little amount to receive your reward at Christmas Day, AND/OR you can just download a free full-featured 1000 turns limited version from there:
Below is a screenshot and some main game features.
http://imageshack.com/i/f0iSBPXIj
Features:
7 levels, all with their unique environments and graphics.
Randomized level builder. Randomization gives each new game a completely new gaming experience, including random monster, treasure and item spawns.
25 Unlockable Achievements: each achievement gives you bonus gold in new games
45 Unique Skills (E.g. First Strike, Charge, Pick Lock, Giant Health, etc)
18 Unique Monsters + Elite versions
15 Unique Weapon types
3 Full Sets of Armor: Cloth / Leather / Plate
2 Jewely Pieces: Ring and Amulet
7 Effects/Spells (Poison, Disease, Fire, Cold, Life Drain, Fear, Web)
6 Enchantments/Spells: Invisibilty, Regeneration, Speed, Freeze Time, Summon, Teleport
Enchanted items: weapons and armor can be enchanted with skills and spells.
Creator’s Visions & Goals with this game:
Casual, Fast & Easy to get started. Have 30 minutes on the bus/train? Give it a go and see how far you get. If you have a good round and play well, it is possible to beat the game within 1-2 hours.
This is STRATEGIC dungeon crawler - NOT a no-brain-dungeon-brawler! Casual does NOT mean easy! Normal mode is pretty difficult, and you may have to try many times before you win the game.
Big replay value! Every new game is a new experience. Level randomness, monster spawns and different skill choices makes up for lots of variety.
Flat Skill Tree where no skill is dependent on any other. Each skill provides an important strategic advantage on its own.
Every hit counts! It is not wise to make a move that ends next to a monster, because then, the monster may hit first!
All monsters have unique strengths. Not even the rats are “safe kills”.
The majority of monsters can wear EXACTLY what YOU can wear. If you drop something, they might pick it up and use it against you!
The main game forum page:
http://lordofthedarkcastle.freeforums.org/index.php
On this forum, you can read more about the game, view some screenshots, post bug reports and see the planned TODO feature list.
I hope you like the game, and I’m looking forward to some new downloaders and visitors!
If you want to discuss this game more, please message me either within the Kickstart project or within the Main Game forum.
Some developer hints that could make this thread more useful for developer perspective:
-
What engine and/or libraries did you use?
I used Netbeans IDE and Java Swing framework to create this game. -
What are some of the techniques you employed?
I am using the MVC design pattern:
- The Model classes contain all the creature and world information, such as labyrinth, monsters, hero, etc.
- The View are the GUI Swing classes that shows everything on screen, e.g. buttons, windows, images, etc.
- The Controller is the main game logic, I have that in a special Game.java class.
I have also used agile development, doing weekly iterations of new functionality.
-
How were these techniques implemented? Providing code is recommended.
Well, I started off by creating the Game.java, GUI.java and a couple of monster/hero classes. And from there, it has been iterative development, and now the game consists of 250+ classes.
An interesting note on this project is that I have used one single “requirements document”. It was a MyGameReqs.txt-file that I have edited in NotePad++.
Why? I’m running this project in private, so I wanted minimal turnaround time and minimal start-up times when opening/editing document.
Lightning fast, still accurate documentation. I hate the formatting crap that takes so much time in Excel/Word documents. >:( -
What are things you’ve learned?
I have learned that Java, in combination with a powerful GUI framework like Swing, is a great language to develop games that does not have high real-time performance requirements. I have previously only worked in C++ (and assembler, back in the 80s/90s) when I wrote games, but Java is really powerful and easy to develop games in. Of course, if I was writing a new fast high performance game engine (which I would never do, I would instead use existing, like Unity3D), I would use C++.
For source control tool, I am using SVN through CloudForge, which I really recommend!
Best Regards
/Christian Andersson, Craze Creative Studios