Warships Revolution - Dev update #1
I worked hard the last days to deliver at least a few basics for Warships Revolution.
Yes, that's the final name of my battleship game. It was originally Battleship Revolution, but too many games include the "battleship" word in their name. Oh, and it's an Hasbro trademark, I'm not sure to have the right to use it.
It's obviously a turn based battleship game. Principle is basic: each player has a grid with ships on it, and the goal is to destroy all your opponent ships before your entire fleet has been sunk. I have some ideas to make it a bit more interesting, but I won't spoil that now.
Ok, so I started to make my revolutionary-super-awesome battleship game. Oh wait... As I said in my last post, the main goal is to create a simple and fun game, and to produce it quickly. It has to be playable, and usable. I want to avoid the "super-production syndrom" and I think a simple battleship game is perfect for that: the gameplay is pretty easy to implement, but it has great potential for an improved experience in the future.
However I have a few more goals to reach than making a simple game:
3D! 3D! 3D! I want to learn some basics about 3D in a code POV. I've been 3D operator a long time ago (and I loved that), so I know how to use tools like 3DSMax, Cinema4D, and so on. I have some mathematic basics. But as a developer, I only made a 3DSMax plugin in MaxScript, once. Luckily, as I said before, JMonkey has a perfect learning curve. I'm not lost for the moment, and I'll be able to improve my skills by gradually diving into JMonkey methods and utilities.
Make it beautiful. Even if the game is simple, I want it to look professional. The best method to reach that goal is to keep graphic design as simple as possible, but coherent from A to Z.
Market it. For this goal the "game" will be different: I won't decide if the game is good or not, players will. So given their (your!) reactions once the first release is out, I'll decide whether I try, or not, to improve and sell it (for a very reasonable price).
What did I do the first days?
I played some battleship games
Checked if the name was available, seemed not, changed it
Stopped networking (If someone read me, are dev updates kind of networking? ;))
Started organizing my code, and made some basic implementations
Started some graphic design for the logo and the UI
Here we are! Here is the list of what is fully or partially done:
Gameplay and general purpose code
- Implemented Game, Player, SimpleAI classes
- Implemented grid management class and random ships placement
- Some managers for game materials, debug tools, internationalization, timers (I may reuse and share all these later)
- Abstract and (part of) concrete ships classes
- Prepared camera position presets that I'll use both for gameplay and cinematics
Graphics
- Implemented Battleground, that generates the 3D environment
- Made atmospheres tests: Sunset, and HeavyAfternoon (screenshots on saturday!)
- Made tests of UI on Photoshop
Tests on JMonkey platform
- I implemented a few UI elements to understand how NiftyGUI works
- I tried, but failed for the moment, to use Cinematics for the camera
- I started internationalization (even if the game will remain in english, I learn how to use java RessourceBundles and properties files, as well as using it in Nifty
Sound design
- Found great pieces of musics and sounds on the net, will make a dedicated post soon
- Added atmosphere sounds and radio communication (part of)
The next few days I'll concentrate on the gameplay. The main priority is to have a playable game. No need of 3D boat, explosions, advanced shaders: just the implementation of a full battleship game. I must be able to play with it, and win or loose against the SimpleAI.
Once the gameplay principles are done, the other priority is a UI for graphics quality settings. It's important for me as a developer in order to quickly test all graphic settings in-game (and check their impact on performances), and in any case I'll use it in the final game to let players switch on and off graphic settings.
Then I'll start working on the 3D representation of boats, their animation, and some first effects. I hope it will be in about one or two weeks.
I hope I did a pretty good logo in a Keep It Simple mind. Very classical, but at least, it's readable, has white and black background versions, and it has a ship, the most important. Obviously I'll appreciate any feedback.
That's it for today. A bit long update, because it was the first one: next ones will be more concise! See you saturday for the screenshots..