Taking a new perspective on things

[Report Bug] [Get the Beta]

A few months ago after enjoying some extensive gaming sessions, I got to thinking that uniball could do with a new look. I wanted one which took advantage of my nice graphics card, and had a few little effects to enhance the gameplay experience. So I began the task of creating a 3d engine, which would become the base for my new look Uniball client.

These pages detail the history and current progress of the development process. It's a slow process as I don't get *that* much time to work on it, my paid work takes priority ;)

The screenshots section has a gallery of the different stages of developement so far, so take a peek there if you want a better idea of how things are looking.

 
0
 

Questions, Questions, Questions

Q: When will the 3d version be ready?
A: This is currently unknown, it shouldn't be too long before you can all get your grubby mits on it though.
A: It's public beta now! You can get it from the download page. As for the final release, that is currently unknown.

Q: Can I be a beta tester?
A: I currently have enough beta testers thanks. If any are needed in the future there will be a post on here and on Uniball Central.
A: You can take part in the public beta testing by downloading the version on the download page. However I have enough private beta testers for now thanks.

Q: Is the gameplay any different?
A: As it works on the current server, the way the game plays is exactly the same as the 2d version. Its basically just a newer look, with special effects, different viewpoints and a few extra features.

Q: What are those ugly ass ships/walls/etc?
A: Well most of the screenshots show the first ships/walls i used, which were just quick hardcoded ones to test the code. The newer shots show the latest models, which are still in development anyway, so what you see at the moment, may not be the final result. If someone is good at 3d modelling and wants to make some models then feel free, if I like them I may use them, or at least include them as an optional download.

Q: I have an idea, can you add this feature...?
A: I welcome ideas, if i like them and think the game will benefit from them I may add them. So email any suggestions or ideas you have to me or post them up on the Uniball-Cental forums as I check the posts there regularly.

Q: Isn't the first person mode a bit dodgy to play in?
A: Yes it makes playing a proper game much harder as you cant see all the other players. It's more for fun, but may actually be good for racing.

Q: Is there any way to record the games I play, to watch later?
A: There is a /record command which allows you to record games. Syntax: /record [filename] and /play [filename]. See commands.txt in the installation folder for more details.

Q: Why doesn't UB3D have macros like the 2D version?
A: UB3D has something similar to macros, but it is a lot more flexible. It is command based and for those who have used console commands in quake/half-life it will be very familiar. For more information look at commands.txt in the installation directory. Just bind the commands you want to use to a key.

 
0
 
Names in parenthesis/italics are the beta testers who notified me of the bug first. A huge thanks goes out to these people!

Latest Updates (unreleased)

Changes:

Fixes:

Public Beta 3b 19th November 2006

Changes:

  • Added keybind for pause on pause/break button
  • Added support for pause
  • Made / key automatically open chat box with / in
  • Slight internal changes to how keys are handled
  • Made dialog class support tabbing
  • Added tabbing to login screen (non dialog class)
  • Added default button press (enter key) on login screen
  • Added default bind for ' to open team chat
  • Made team chat display in a different way to regular chat
  • Updated version to work on new server

Fixes:

  • Fixed time not being reset on game creation
  • Fixed bug where certain keycodes would not save in binds
  • Fixed bug where variables would not save correctly
  • Fixed bug where proper shutdown of systems failed

Public Beta 3a 22nd June 2006

Changes:

  • Updated to work on new server

Fixes:

Public Beta 3 28th May 2006

Changes:

  • Added per pixel lighting option
  • Added support for pixel and vertex shaders using GLSL
  • Added colour code support to font class
  • Observer mode now defaults to observing a ball rather than the first entity
  • Added demo selection window to aid in playing back demos
  • Added functions to load window layouts from XML files
  • Added XML parser
  • Modified font class to support variable width fonts
  • Added freetype library support
  • Fixed texture blending problem with seams on skybox which was only discovered when changing the nebula textures! (opengl 1.2 required)
  • Implemented a digital image processing class
  • Used DIP class to generate nebula textures at run time
  • Added console command /overlay_colour to change map overlay colour
  • Added /snd_enabled command to turn sound on/off

Fixes:

  • Fixed a component switching bug in the bmp loading code
  • Removed unrequired libs from linker settings
  • Fixed demo file parser to not parse fragmented packets
  • Modified some code in the packet parsing which could have caused problems on very unreliable connections
  • Fixed bug which could cause UB3D to crash on disconnect from server
  • Fixed a socket reading routine which could cause stack corruption in certain circumstances
  • Observers no longer appear on radar
  • Scores reset correctly on game reset in all cases
  • Player list appears in lobby again

Public Beta 2a 15th July 2005

Changes:

  • Window mode now centers on screen
  • Modified moon texture
  • Replaced quit button in game list screen with a disconnect button
  • Added london server to default server list

Fixes:

  • Fixed support for non standard tcp and udp port use

Public Beta 2 12th December 2004

Changes:

  • Changed default fps_max value to 10000 as its purely just for internal testing. Vsync is now the only limiting factor for normal usage
  • Bound F4 to neutral team switch command by default
  • Changed shot distance calculation to simulate much smaller ship sizes. Although I liked the idea of piloting huge ships, it seems more realistic to have them be a little bigger than real world cars.
  • Added more options for fullscreen/window modes
  • Added console window to make debugging easier. Also allows you to see messages that have gone off the normal screen
  • Improved text entry control to support multi-line, word wrap and horizontal scrolling
  • Finished modifying all objects to use entity class
  • Added support for observing games on server
  • Improved spectator mode (demo playback/observing games)
  • Improved prediction/synch algorithms
  • Improved performance at lower frame rates
  • Modified normals smoothing
  • Modified nebula texture

Fixes:

  • Shot speed displays correctly at faster demo playback speeds (thanks Ataqer)
  • Fixed to work with current server

Public Beta 1_9 21st March 2004

Changes:

  • Added distance display after goal and longest/shortest shots stats (thanks Dave_K)
  • Added team name change based on squads (thanks Dave_K)
  • Added squad names to player list
  • Modified some interface controls slightly
  • Improved performance of depth sorting a bit
  • Made team settings load at run time from file
  • Added build up pass list on goal
  • Added effect when goal scored
  • Added possession calculation and display
  • Added con_colour command to change default window colour
  • Added extra goal scored message
  • Added 3 new particle textures
  • Adjusted some particle settings
  • Made particle configs load at run time from file
  • Added variable turn speed cvar and option in key config

Fixes:

  • Fixed game time not reseting on game joins sometimes
  • Fixed control lag

Public Beta 1_8 28th February 2004

Changes:

  • Added support for admin messages (/voice)
  • Increased max demo playback speed to 5x
  • Reduced ship polygon count
  • Added routines to use 3DNow! and SSE technology
  • Implemented movement smoothing + cvar cl_smoothing to tweak
  • Changed way windows handle resizing
  • Added arrow icons for mouse, window sizing, etc
  • Made ship icons on map overlay point in faced direction
  • Made ship icons on reticle point towards their location
  • Added more to help screen
  • Added newline parsing and word wrap to some controls
  • Modified ugly lighting so that colours map in correct places. Its still ugly though, only use it if you HAVE to ;)
  • Added keyboard binds
  • Removed parts of old keyboard config
  • Added more complete command parser
  • Made goalzone areas pulse
  • Modified default smoothing angle
  • Modified ship models slightly
  • Moved name list down a bit
  • Changed starfield generation routine
  • Made goalie models
  • Made forcefield walls pulse
  • Modified forcefield wall model to use less polygons
  • Added drop shadow to server/chat messages
  • Added moon to environment

Fixes:

  • Fixed ship wobble in demo playback
  • Fixed bug in map selection screen which would sometimes reset the map selection
  • Fixed up some code in the map overlay routine which could have possibly caused problems in some implementations of opengl
  • Fixed sound bug where it would fill the log with listener orientation errors. (thanks Cow!)
  • Implemented depth sort for correct transparency display (only setup for particles currently)
  • Fixed error when game creator destroys game

Public Beta 1_7 - 29th November 2003

Changes:

  • Addec Icon to the executable and window
  • Added server list to make connecting to different servers more easy. Currently requires external editing
  • Added sound class
  • Username/pass now saves in HKEY_CURRENT_USER instead of HKEY_LOCAL_MACHINE
  • Modified polygon class to use vertex arrays (can be modified on the fly now)
  • Improved map loading and drawing routines to gain some extra speed
  • Optimised bits of the particle routines
  • Modified crosshair graphic
  • Added basic help screen on F1

Fixes:

  • Fixed particle systems not unloading in some cases
  • Windows (including map overlay) now move to fit in screen on a resolution change
  • Fixed bug where everything was black and white on some video cards?

Public Beta 1_61 - 11th September 2003

Changes:

Fixes:

  • Included updated particle graphics as file released in 1_6 was from and old version!

Public Beta 1_6 - 28th September 2003

Changes:

  • Added cvar cl_talkkey to disable the requirement of pressing a key to type a message
  • Limited messages to 72 characters when in game (what server allows)
  • Added resolution check before trying to switch modes. This will hopefully fix the problems on low end graphics cards?
  • Added change team confirmation dialog
  • Stopped change team buttons working in lobby
  • Directed some error messages into log rather than message boxes
  • Added cvar debug_log to set the level of debug data to log ranges from 0 to 10
  • Removed obsolete reference to walls.tga

Fixes:

  • Video options displays current bpp properly again
  • Ini video settings save again
  • Fixed problem connecting after disconnecting
  • Lobby launch dialog no longer resizable
  • Thrusters now get removed when a player leaves (heh)
  • Fixed internal bug which was causing chat messages to be parsed as server messages (logged as unknown packet id)
  • Fixed forcefield walls appearing as normal walls again (doh!)
  • Fixed error in game create screen when scrolling and no map selected (sometimes crashed)
  • Fixed quick mouse clicks not always registering

Public beta 1_5 - 21st September 2003

Changes:

  • Added cvar fps_max to limit frames per second (also cuts down cpu usage) defaults to 60

Fixes:

  • Fixed gamelist bug where it would just stop at getting game list

Private Beta 1_4 - 12th September 2003

Changes:

  • Added score list on tab key
  • Added ultra simple bounce goals (woohoo more temporary models ;)
  • F4 key no longer launches game
  • Added author, game type and team count to game creation screen
  • Added system time/game time to score panel
  • Added individual scores to end game result
  • Map overlay now movable/sizable
  • Added launch game dialog
  • Modified some controls on dialog class
  • Improved dialog class to support movable/sizeable windows
  • Username/Password now saves in registry (same key as original ub, however I may change this to be under HKEY_CURRENT_USER)
  • Added data rate calculations to socket wrapper class (will add a graph to display rates at some point in future)
  • Switched the camera modes on keys F5 and F6
  • Added CVar system to make variables easier to manage/add (old ini graphics section no longer used)
  • Added another thruster type for when up key is pressed
  • Added dual rockets to ships
  • Adjusted fire particles a bit
  • Adjusted frustum culling slightly
  • Adjusted normals calculation slightly
  • Optimised starfield code
  • Udp packets are now sent every 200ms, instead of waiting for packets from the server. This should stop some of the jumps on bad connections
  • Added ball catch code to make the ball location more accurate
  • Boxed some HUD messages
  • Server Ip and ports can now be set in the ini file
  • Made collision detection trigger the dust particles so they appear in more accurate placement
  • Improved chase cam
  • Added insert/delete keys to rotate the camera around viewpoint
  • Added home/end keys to zoom the camera in/out
  • Added pgup/pgdn keys to move the camera up/down
  • Enabled the ball reticle in new cam mode and chase cam mode
  • Added another camera mode to F5 key
  • Improved ship name positions. Still needs work in some modes
  • Zoomed top down view out a little
  • Made key redefinition screen show names of keys
  • Re-enabled collision detection and tweaked it a little, ship to ship collisions and gravity still undetected at the moment

Fixes:

  • Fixed crash when trying to join a game after reconnecting to server
  • Fixed demo playback crashing at end if program was quit during recording
  • Fixed demos playing back slightly faster than original
  • Fixed error in BMP loading code which caused problems when freeing up the mem. (ini settings should save properly too now)
  • Fixed nebula orientation
  • Clipped text to correct width inside lists
  • Fixed goalzone error which turned lighting on if it was off
  • Fixed scores not being correct when first joining a game
  • Fixed textures only displaying as 16bit on ATI cards (Ataqer)
  • Fixed polygon colour mapping on ATI cards (Ataqer)
  • Fixed demo ship turning error when allocated user slot zero (Ataqer)

Private BETA 1_3 - 18th August 2003

Changes:

  • Modified font style and size. Also resizes to fit different resolutions better
  • Escape key now gets out of chat mode, and clears the chat buffer
  • Changed chat to require key press before talking/command (defaults to key 't', but redefinable)
  • Added key redefinition screen and enabled redefinition class
  • Adjusted stars and reticle to look better in all resolutions
  • Added rocket meter to mouse cursor
  • Made forcefield walls look more like forcefields
  • Added simple goal zone models
  • Changed ship models to be similar to 2d uniball models (unfinished)
  • Changed size of ball to be more accurate
  • Modified smoothing angles for various models
  • Added textures to walls to make them look more like 2d uniball walls
  • Modified balls to look more metallic

Fixes:

  • Fixed model textures not reloading on loss in OpenGL (resolution change, etc)
  • Fixed internal normals calculations to smooth the models properly
  • Fixed top down camera key not working in demo mode
  • Fixed camera modes not always changing correctly

Private BETA 1_2 - 11th June 2003

Changes:

  • Changed default resolution to 1024x768x32, it should revert to 640x480x16 if that is not supported though.
  • Added key to use brakes
  • Improved camera class (first person on f8)
  • Slightly better wall models (still need new ones with nice textures)
  • Changed other player rotation smoothing code to use set value, instead of calculating it per ship (is it any smoother?). Server sometimes sends the same angle twice, even if u are constantly rotating, so I just ignore those new angles. It causes the ships to jump back a bit once they stop turning but its better than them constantly jerking as they turn. Might make it smooth to the new position, instead of trying to match the angle with own calculations. It would mean angle of other ships is always slightly behind though, but then lag does that anyway. That would probably solve the problem.
  • Added keypad keys + and - to adjust demo playback speed from 0.5 to 3.0
  • Skybox now rotates to match the view (still needs work, and textures need to be tiled better)
  • Added /stop command to stop a demo recording/playing
  • Added recording status text to HUD
  • Modified status/chat messages text size (Textures dont size down very well within opengl so i may change the font texture at some point. Scaling up, however, is fine)
  • Made global light slightly brighter
  • Added ini value "InternalNormals". Set this to 0 to use the normals stored within the model files themselves. It's default value is 1, meaning normals are calculated on the fly within the the game itself. There is no way to set this within game, and its more for debug and possible tweaking of models in the future (its setable per model).
  • Added player list to the game list screen. Members of selected game are shown. Updates itself.
  • Added constant message when sat in lobby so you know game not launched.

Fixes:

  • Fixed demo play only working once each time game is run
  • Fixed demo play back speed to be more accurate, and less jerky at lower fps
  • Disabled ship to wall collision detection for now, gonna redo the bounding box/sphere calculations etc
  • Fixed demos still playing after connecting to server
  • Fixed problem with not joining game properly after playing a demo
  • Fixed problem with only being able to play 1 demo each time game loaded
  • Fixed "team wins" text colour to be the colour of winning team (forgot to change the code that does it when i changed the way colours work) and fixed the alpha value sending as well, so messages can fade again.
  • Cleaned up some "temporary" code that was added previously to test stuff
  • Fixed camera viewpoint being slightly offset due to new positions being calculated after camera was set up. This should fix the ship "wobble" as you accelerate, turn, etc.

Private BETA 1_1 - 4th June 2003

Additions:

  • Made ships lean into turns

Fixes:

  • Fixed disappearing models on window mode change
  • Fixed texture colour materials mapping to wrong polygons
  • Made workaround for problem with lighting on particles

Private BETA 1

Features:

  • Basic camera view similar to 2d uniball
  • Basic controls
  • Demo recorder/player
  • Various graphics options to disable/enable effects
  • High resolution support
  • Windowed mode support
 
0

All Content and Images ©2003 Jamie McDonald. All Rights Reserved.