|
RaMtiGA - Raising a Middleworld to its Golden Age: Blog
|
|
May
15
Written by:
Jashan Chittesh
2008-05-15T19:32:07
As promised, the long list of release notes for V0.88 of TRaceON (this list is somewhat condensed):
- When shooting wall, the projectile speed was fixed - when a player had used the speed up power up, this would make him go right into his own projectile causing a crash - FIXED
- Jumps directly after turns caused crash - FIXED
- Added two new perspectives (very far and overview, on keys 4 and 5)
- Changed the game title and included my contact information as well as the fact, that this is an ALPHA version (which means pre-beta)
- Displaying the current lag as well as the server FPS
- Names above cycles were not turned correctly in certain situations (like when jumping, or in overview mode) - FIXED
- The chat has been completely redesigned, use /help to find out what's possible: Colors are animated when messages arrive, there's various message types, like private (whispering), team, game session, global, network messages, game messages and server messages.
- Quit-Button was moved away from play button to avoid accidentally closing the game
- Screen resolutions can now be set in player, including switching on and off fullscreen mode. This also makes Unity's startup screen redundant, thus now the game directly opens.
- Configuration window now adjusts to screen size automatically in three steps.
- More player stats are now shown (if screen size permits), and also added team stats.
- Server optimization: Deactivating all gameobjects that are not relevant to game-logic (eye candy). This dramatically improves the server performance (900FPS on my local Mac Pro).
- A lot of improvements on the networking side, to hide lag as good as possible. For instance, jumping and shooting walls now immediately starts on the client (but it is still checked on the server, so a hacked client will just get funny effects locally but won't interfere with the other players).
- Added a secret. Only very few people know. You might see it in game, if you play with someone who knows (this is something that I haven't created, it was a very nice donation, and it looks really cool ;-) ).
- Added a new lightcycle which looks much better than the original one. The original one is still kept and can be selected (and in V0.88, it has the "power-up cheat" which means that all power-ups are always available). Also added wall colors to the lightcycle to make it more personalized. There's now a cycle selection screen.
- Much improved the poly-count of the lightcycles, which much increases performance.
- Removed that ugly old startup sound that gave me astral chills when I heard for hours and hours while developing and play-testing. Now, at startup you get a nice sound instead of something that'll make you scared ;-)
- Much improved the "spectator mode": When you're in a multiplayer session and your cycle crashed, you can now view other players (and they will see you're viewing them), and you can also switch through several overview cameras per level.
- System messages now scroll in from the lower part of the screen and then disappear twisting - this includes game, network and server messages.
- Much improved the handling of starting a game in multiplayer mode: a little P is now shown in the color box of each player, indicating that this player has hit play. When a few players have done that, and a timeout has passed, the game can be started via "force play" which will remove people from the teams that have not hit play, yet (this is very useful when a whole group of people has to wait just because someone is AFK). The people removed from the team can join back in for the next game.
- In the lists of players, the player is marked with his color to make it easier to see "who am I?"
- The whole "startup screen" is now completely redesigned and polished. I now have my own skin which fits the whole color theme. I've removed the ugly rendered image and now have a nice water effect, and a cycle standing in an arena (btw, the "mountain" is actually a volcano; it's the Teide of Teneriffa, at sunrise; the picture was taken after a wonderful meditation). Changed the fonts. Also, I've added a lot of animations and sounds. Basically just eye-candy, but I like it a lot ;-) hope you like it, too...
- Keyboard commands now work with both ctrl (strg) keys (left and right instead of only left)
- Added a voting system for selecting the player democratically in multiplayer mode. If two levels have the same amount of votes, the higher level is selected. Oh, multiple levels can be selected (also in single player mode). Currently, I have two levels (of 10 in the final game).
- The GUI in the startup screen for the tutorial is already there - but the tutorial itself will be implemented later.
- Performance-Optimization: There's 5 different quality settings, and these are now automatically selected depending on the framerate. If it drops to low, the quality is decreased, if the is very high, you get the best quality. This adaptive quality control includes particle systems changing the number of particles if the framerate is really low (while trying to look "almost the same"), and switching on/off reflective effects. This also includes selecting two models of the cycle: A high poly model, and a low poly model.
- Added three modes for sound: Music & Effects, Effects Only, Mute (but DO NOT set this to mute, and also DO NOT set this to Effects Only... okay?)
- Polished the overall look in the levels while playing, in particular added a nice reflective effect to the floor (which gets switched off if your computer can't take it and the framerate drops too low).
- Bullet time now has a nice refractive effect. This was inspired by Forrest (Yoggy) Johnson's "heat refraction", but I've adapted it to support the effect of "time slowing down". It always "starts" from the cycles because it's the cycles that are "alive" and thus the time slows down from there (from all cycles, not only from the person who starts bullet time).
- Time is now encapsulated into the game sessions to make bullet time also work on a server that hosts multiple game sessions simultanuously.
- All levels are now always alive on the server, game sessions (a group of up to 20 players that are distributed on up to 4 teams, 5 players per team at max), register with those levels. In other words: You might be playing in the same level on the server as other players (in another game session) without noticing it. That way, the server can theoretically host any number of players.
- ... that was V0.85, then I decided to immediately go for V0.88:
- Player cycle selection is transmitted over network (NOTE: There's a bug in V0.88 that prevents this, you HAVE to select your cycle before logging in to the server, or you're heading for trouble and people will not see your cycle; as using the "classic" cycle gives you unlimited power-ups, you can see what happens to "illegal" cheaters by connecting with the new cycle and then switching to the classic cycle while logged in - that way, your client will think you have the power ups, but the server will disagree, and you know: the server is ALWAYS right)
- Added a "test-mode", which can be activated via ctrl+D (strg+D on German keyboards). With that, you get an AI controlling your cycle. The idea is to have people run multiple instances of the game to stress-test the server. I'll announce dates and more details instructions on that separately.
- Removed the term "arena" because I don't like what's associated with it (violence and death). Using "Level" instead, which is neutral, and also makes sense from the game perspective (you'll know why when you have completed the whole game... which is not possible in V0.88, but will be in V1.0 ;-) )
- A lot of major networking improvements. The most important one is that now messages are sent only to the clients to which those messages are relevant. In particular, this applies to game message in the levels which are only sent to the players who play in that level (in a game session). This way, game sessions are completely independent of each other, making it possible to host as many players on a single server as the server can take performance-wise. As mentioned above, this also includes major optimizations to make lag invisible. I've tested this with "modem connection speed", and of course, the lag is visible, but it should interfere with the game play as little as technically possible. Also, things should be as fair as possible now (i.e. your cycle not crashing just because you have lag and the server didn't get your turn in time).
- Removed all server code from the clients (now people hacking the client won't have access to any server specific code, in other words: they will have to program the server themselves, if they want to use a hacked version of my game as server). Did I mention that you should not even try to crack that game? It's not fair. Don't do it!!! And if you do: Let me know about it (instead of giving the cracked game to the world ;-) ).
- Fixed some major problems that occured on turns with large lag (this was one particularly tricky area - I have an UML activity diagram for what happens on turns now, and - WOW - that's a big diagram!!!)
- Changed the priority on the (physical) server to avoid the game server going down just because a Website request is being worked on.
- No more jumping over walls in the first two levels. They are too high. Don't try. But if you like "wall-jumping", you can look forward to the 3rd level (to be released with the next version), which is named "Jumping Jack", so you know what will be special about that level, don't you?
- Bullet time now has an indication when it's started, how long it will last, and a warning is shown 5 seconds, and then the last second before normal time-flow is restored.
- Made all power-ups compatible with the new networking approach and optimized for high lag.
- Power-ups are now handled correctly within a game session: Players can keep power ups as long as they are playing with the same people (which is fair). However, they can't take power ups from one game session to another one (a "game session" is the group of people playing together in several teams).
- Added the "power-up cheat": This is now available with the old cycle model. In the final game, this will be available to special people in a special level, and it has a special purpose that I cannot talk about, yet ;-)
- When you create a team, you now immediately become a member of that team (this saves you one mouseclick and is just logical and intuitive).
- Server: Ignore all collisions between objects from different game sessions. You don't want your cycle to crash into a wall you don't see, now do you?
- Implemented "smart camera" which avoids walls. This is particularly important for level 2 ("Plus Ceiling") which has a ceiling in most areas of the level.
- Well... I've mentioned it before (when, oh when did I do THAT??? ;-) ): Added Level 02: Plus Ceiling, including a soundtrack specifically for that level.
- Created a "master client". Well, that's only for me and support people once I have them, sorry. And: The code is not included in the public clients, so don't even try to "switching that functionality on with a quick hack". I couldn't let you do that because the master client has some features to make changes on the server which I wouldn't want anyone else to do ;-)
- Pressing the key "Y" (or "Z" on american keyboards) now locks the camera directly behind the cycle instead of looking at it from either side.
- Pressing the key combination ctrl+. (ctrl and dot simultanuously) during the game now activates wasd control and mouselook. You need to press the mousebutton to change the perspective, and you can use the mouse wheel to move closer or farther away.
- Added /cls command to the chat, which clears the screen. This is mostly a workaround for a bug that appeared in Unity 2.0.2 which makes the chat lose focus when it needs to scroll, which is really cumbersome because you have to click into the text field each time you want to type something.
- Players using the AI can easily be discovered because their name is switched to Test-Player and they can't change it. You don't want to cheat with this feature, do you?
- All network messages are now encrypted.
- Fixed a problem with screen resolutions that made the best screen resolution not show up on some systems.
What a list... if you read to here, you must be an amazingly patient person ;-) That was by far the biggest release so far - but it layed out the framework for what's to come.
So, what is it that is to come? 10 levels altogether, with an interesting progression (this is multiplayer only, I'll probably only include the first 3 levels in single player mode - this is Multiplayer TRaceON, don't forget that!)
The tutorial level, of course, which will take you into the game real quick.
Persistence, of course, and fully integrating the game into the Website, which by the way, was also a MAJOR change during development of V0.88. This is now the "real RaMtiGA Website" instead of just a copy of my jashan-chittesh.de site. Lots of things have changed that no one (except a few chosen friends) can see - but you will see, when the time is right...
Well, this was a loooong posting, and probably pretty hard to read - thank you very much for taking the time!
Tags:
|
|
|
|
|
|