Tuesday, September 30, 2008
Monday, September 29, 2008
Sunday, September 28, 2008
New MekaWars demo!
- a static initialization screen
- an options screen with animated models
- users can choose the number of units
- radar tracks shown in the 2D viewer
- two different programmable teams
- improved info and Lua documentation
- a Lua language programs editor
Please, report any problem that you can experience with the new demo and feel free to post here comments, suggesions and constructive criticisms about the MekaWars simulator.
Saturday, September 27, 2008
The 2nd MekaWars demo (II)
Friday, September 26, 2008
The 2nd MekaWars demo
Thursday, September 25, 2008
MekaWars' radars
Stay tuned! The new demo will be available in just a few days.
Wednesday, September 24, 2008
MekaWars official site
Improved versions with more documentation will be available soon, but be aware that, while the simulator behind the scenes is stable in its design, the "real thing" will be graphically much better, of course!
Tuesday, September 23, 2008
The Gun-Tactyx site is back
It has been hosted at GameProg.it for years, but recently they modified their hosting policy and there is no more space for external projects.
MekaWars renews the playability of Gun-Tactyx, extends the modularity of the units, but also simplifies the AI programming phase.
The advantage to use Lua is in its versatile interpreter: it does not need a compilation phase, its syntax is simpler to master for beginners and it keeps all the advantages of the SMALL interpreter (full control on memory allocation, step by step execution of bytecode instructions, simulations completely reproducible).
Monday, September 22, 2008
Banners in Flash (II)
Sunday, September 21, 2008
MekaWars very early demo
You can download the MekaWars very early demo (1.5 Mb) from SourceForge. Just for blog readers' eyes only.
First of all, let's explain how to play. MekaWars is not going to be an interactive space combat simulator: it is based on the same design of JRobots, thus it is a "programming-game", those games where players program the AI of their team of bots and then watch them fight against other players' teams.
In the demo, you can experience only a few features of the real simulator and the situation at the beginning is always repetitive: 2 fighters and 6 harvesters that always start from the same positions, while asteroids and resources change the position at random. In practice, you must fight against yourself to see some action.
To develop the pilots' AI, you must program in Lua the file 'pilota.lua', that already features a few lines of simple behaviors. In the readme.htm, you can read a short list of the available functions.
Feel free to ask for any additional explanation and stay tuned for more interesting, more complete and more playable demos.
Saturday, September 20, 2008
Thursday, September 18, 2008
The Wadfather
Are you looking for a suggestive skybox for your game? Do you need nice textures in the public domain? Do you simply look for a nice wallpaper for your desktop? The Wadfather is the site for you!
Wednesday, September 17, 2008
Particle-based physics (III)
In fact, the rigid constaints that link particles are resolved spreading the calculations over several frames (the method, known as relaxation, guarantees convergenge, but not immediately). If the satisfaction of the constraints is further relaxed, the body built of that particles and sticks looks like a soft body rather a rigid body, as the jelly cube that you can see in the screenshot.
Even if the algorithm it quite simple, the range of effects that one can achieve is remarkable.
Tuesday, September 16, 2008
Particle-based physics (II)
I first read about a particle-based physics engine in an old paper by Thomas Jakobsen, who designed the dead-body simulator of the first chapter of the Hitman series: “Hitman: Codename 47”. In that paper Thomas described a simple way to simulate rigid-bodies, soft-bodies and cloths, through the use of particles linked by sticks. In practice, the particles follow the usual laws of dynamics, but also they are constrained in their motion by rigid connections with nearby particles. The result is a very fast way to create a believable physics behavior with little computational effort.
In practice, the algorithm works on a grid of particles connected by almost rigid constraints, not the usual springs as you can see in other simulations. The distance constraint is solved by the particles themselves over several frames: they simply adjust several times their position to better fit the required stick lengths.
Finally, to create the blowing wind effect, the 3 vertexes of each triangle, that the cloth is made of, are displaced accordingly to the surface exposure to the wind direction: large displacements when the wind is perpendicular, no one when it is parallel.
It may be surprising, but this small set of rules (linked particles and wind direction) is sufficient to create in a realistic way those characteristics movements of flags and cloths.
Monday, September 15, 2008
Sunday, September 14, 2008
Saturday, September 13, 2008
New FORUMS at SourceForge
- GENERAL SUPPORT
This section is devoted to questions about the general usage of the engine, such as, but not only, the use of a particular feature or library, report strange behaviors in your own code, or ask for help in the development of tricky algorithms. Also questions about the Lua scripting language are welcome, because Lua is the main language used in the development of APOCALYX-based demos and games. - GAMES DEVELOPMENT
This section is devoted to questions about the development of games using THIS ENGINE (not games development in general), such as, but not only, the application of particular features or libraries to realize a certain technique useful for your game, report strange behaviors in a large project, or ask for help in the development of the game itself.
Remember also that I post daily news about the development of my own games on the APOCALYX 3D Engine BLOG. - ENGINE DEVELOPMENT
This section is devoted to questions about the LGPL C++ sources of the engine, such as, but not only, the included source code of a third-party library, report strange behaviors in C++ code that you have modified, or ask for additional built-in features. Questions about the C++ language are NOT welcome, because the modification of existent code requires a very good knowledge of C++. - TOOLS SUPPORT
This section is devoted to questions about the third-party tools that you may used to develop your APOCALYX-based demos and games, such as, but not only, the use of a particular source editor (there is a very good one, currently in development, known as NsEditor), the use of certain resource editors (like the BSP editor GtkRadiant), or the other tools listed in the Tools page of the official APOCALYX site.
In this case, I can't guarantee to help you much with my answers, because my knowledge of those tools is not advanced, but I'll try to answer anyway.
Feel free to post frequently! I'll answer as soon as possible.
Friday, September 12, 2008
Spore prototypes
Anyway, I'm not interested in the game itself, but in its development prototypes that are available for free and learn a lot about the step moved towards the real thing.
In particular I'm interested in their interfaces, for example that of the Space prototype, the screenshot of which you can see in this post.
Spore has been a huge undertaking. Along the way we ended up exploring countless design directions in gameplay, simulation and user interface. One of the ways in which we explore possible design directions is by building simple, playable prototypes that we can play around with to get a sense for a particular system. Usually these prototypes are never seen by the public, but we thought some of the more intrepid players out there might enjoy playing around with a few of our early Spore prototypes. Keep in mind these are not tested, supported or even easily explained.
Thursday, September 11, 2008
Game Physics Competition
There are two caterories:
- Most Innovative Use of Physics in a Game. Your entry must be a playable PC game demo that includes new or unique uses of Havok technology. They're looking for new ways for the player to interact with the game through physics, showing different uses of physics than what can be found in PC games today. This can be a FPS, sports game, casual game, or any other type of game.
- Best Physics Knowledge Base Entry. They're looking for the best contributions that can benefit the game developer community. This can be a code sample, optimization tip, technical whitepaper, a technical abstract of your demo, or any other technical content that shares your knowledge of game physics with the community.
Submit your demo or application concepts by November 15, 2008 to be eligible for the finalist round of competition. Submit your entries to the Best Physics Knowledge Base category by January 16, 2009 to be eligible for the top prizes in this category.
Check out our Official Rules at SoftwareContests.Intel for more details about this contest.
Wednesday, September 10, 2008
MekaWars' decoys
Tuesday, September 9, 2008
Incoming missiles
Monday, September 8, 2008
Sunday, September 7, 2008
MekaWars' miners
In conclusion, fighters now have an additional use: to mine resources from asteroids to let harvesters collect them.
Saturday, September 6, 2008
Friday, September 5, 2008
Thursday, September 4, 2008
Retro Remakes Contest 2008
This one in particular is very intriguing because there are a lot of prizes, but also because the task is the development of games that has something to do, resemble or even clone, glorious games of the past.
Here you can find the direct links to the categories, the rules and, finally... the prizes, just to wet your appetite.
The competition has already started in the past days and the submission line is around the beginnings of December, so you'd better to visit the site of RETROREMAKES for more info, if you are interested.
Wednesday, September 3, 2008
Lua-OpenGL binding
In practice, a ScriptObject is a graphical object that a programmer can add to the 3D world, but its particularity is an empty render() method. This means that no C++ drawing method is defined by default, while a Lua functions is called, instead. To explicitly draw the object, the programmer can use the LuaGL binding functions.
In the screenshot above, there is the usual background in which you can see a ScriptObject: a simple triangle strip with different colors defined at its vertexes.
Tuesday, September 2, 2008
MekaWars' torpedos
In the small radar-like screen shown in the screeshot, the white pixels correspond to bombs, while the red pixels to torpedos. You can see also a chain reaction: a row of mines that explodes in sequence.
the cannon shoots bombs at a maximum constant speed, while tubes may drop torpedos at any speed (up to a maximum), even zero speed (in that case they act as mines); the number of bombs is limited only to the amount of energy available, while torpedos are finite; the cannon can't shoot when the shield is active, while tubes can; bombs explode at the end of their run or when they hit an obstacle, while torpedos can explode after the activation time has expired and, after that, they react when hit or when a vehicle enters the activation range; bombs are not affected by other explosions, while torpedos, when activated, react to nearby explosions (as in the shown chain reaction).
So torpedos are more versatile than bombs and I'm sure that very advanced players will create smart pilots who, being hidden behind an asteroid, will make their torpedos bounce against other asteroids to hit enemies on the other side: That's A.I.!
Monday, September 1, 2008
APOCALYX 3D Engine 0.9.3
The APOCALYX 3D Engine 0.9.3 release is finally available. It includes some improvements and bug fixes. To download the engine in a easy-to-get 60 Mb installer, or in smaller selected pieces, visit to the APOCALYX Official Site's Downloads page.
New features:
- Added MDLModel functions: setTransition(), setTransitionTimer(), getStoppedTransition()
- Added IM (Imaging Toolkit) support in IUP GUI
- Added primitives: Cylinder, Disk, PartialDisk, Sphere
- Added setPointerVisible(), isPointerVisible()
- Added string.pack(), string.unpack()
- Fixed bug in collisions between ODE objects and BSP geometry
- Added support for Arbitrary Precision Math (MAPM)
- Added support for Video Capture functions (experimental)
- Added support for MySQL databases
- Added support for SQLite databases
- Removed AngelScript language support
- Removed SMALL language support
- Removed CSL language support
New demo (in full-installer):
- Mushroom's Ride, that shows some of the engine features at work.
You can download the runtime of the engine and the demo packages from the Downloads page. For more detailed descriptions of the demos, visit the Demos page. Feel free to ask more about the new capabilities of the engine on the forums or by e-mail. Visit the APOCALYX Blog (this one) to read daily news about the engine and its development.