Unlimited Simulator project is a general purpose simulator.
Unlimited Simulator is not a game. It's a basis to create whatever simulations you want, from games to scientific simulations.
You only have to worry about physics, controls and how the world looks like. It can be at the same time a car simulator, a spaceships war game, or a scientific simulation.
While you can do these things on their own, Unlimited Simulator provides the ability to do all three at once. It allows interaction of completely different kinds of clients, thus achieving unprecedent realism and complexity.
Here are some key features of "Unlimited Simulator":
· multiplayer: many players by internet or two in your computer;
· create your own vehicles, tracks, terrains, sounds, objects;
· vehicles may have their own physical simulation functions, and interact with the game, creating new objects, destroying others. They can fly or float or move underwater; they can be animals, or surrealistic creations. You create.
· track can contain structures as loops, bridges, banked curves, and anything you can do with polygons;
· creating a track can be done DRAWING on the terrain (not implemented yet);
· objects can be animated and intelligent!
· everything is modular: this means almost all the stuff is plugable! No need to recompile the code;
· last, but not least: GPL'ed!
What's New in This Release:
· big debugging in ulengine/primitives.c. Several allocation problems solved.
· review of network code: structs separated in a new header, shared/net.h, and other improvements in code itself.
· review of client plugin format (what functions, names, etc).
· wrappers for the not-so-standard standard C variable types in config.h.
· cosmetic changes in some places, specially ulengine.h.
· BIG debugging in ulengine/project.c and ulengine/graphic.c. Only a billion or so bugs left.
· improved ulengine/demo.c; tests now include graphic functions.
· fixed two small bugs in drawHLine due to rounding.
· added a new projection system. Not tested yet.
· graphics test phase started: drawPixel, drawHLine, drawLine, drawFlatTri and drawShadedTri are working.
· modified POLY_UL structure: SCREENP_UL *projected field was deleted. This field is really unecessary, and deleting it saves 2*sizeof(int) bytes for each vertex. Projections are not individually saved anymore (why should they be after all?). See ulengine/project.c:projectP() to see how projected points are handled.
· added ulengine/image.c, to handle image operations.
· added ulengine/effects.c.
· textures support implemented.
· several small optimizations in ulengine/graphic.c.
· work in the server communications system.