Author
|
Topic: UQM Recreation (Read 86464 times)
|
JonoPorter
Enlightened
Offline
Gender:
Posts: 656
Don't mess with the US.
|
I rewrote the code for the collisions to force all rays to be in a group. This improves performance when a large number of rays are close to each other. As a result of this new grouping allowed me to write the code for lightning in a fairly short amount of time, compared to what it would have been. I used a recursive midpoint displacement algorithm to generate the lightning. Now if a ray in the lightning group intersects with something all the rays that are after it are removed. Making it so lighting stops after it touches something.
|
|
|
Logged
|
|
|
|
NamelessPlayer
*Many bubbles*
Offline
Posts: 104
|
I started dicking around with the engine, and one of the demos gave me an idea.
You know that one demo where ships in the shape of Cruisers fire homing missiles at you? I started using the rays to send the things flying back. This gave me an interesting game idea...
Your ship has none of the usual weapons-no energy bolts of doom, no missiles. However, you do have a repulsor device, which can be used to send projectiles, asteroids, ships, and the like flying away. For some reason, other ships are trying to scrap yours, so you have to take them out by any means possible. This usually involves reflecting your projectiles back at your assailants, but some projectiles may be unaffected by the repulsor, requiring you to use things such as asteroids, enemy ships, or scrap to chuck at them.
I'm considering some things before I start tinkering:
-Should the player ship survive more than one hit? I was thinking of having external engines, which when hit, would start wobbling and eventually coming off. Maybe you could hit a key to jettison them if they go critical, so they won't explode and damage your ship further(should engines go critical, even?). This would hamper your manueverability and speed, of course. The main hull could probably survive one or two hits before the entire ship is destroyed. Maybe I should use a Vindicator-type ship without the "side rails" so that individual modules(new to the mix being thruster modules on the main body to compensate for the lack of the rails)can be damages and destroyed independently from the ship.
-Should there be an all-encompassing repulsor mode(hit R to see what I mean in the Physics2D demos)with a vastly reduced range?
-Should there be an energy limit for the repulsor? If both repulsor modes are included, the all-encompassing mode will suck energy VERY fast, and even so, area-of-effect weapons like missiles may still damage your ship.
-Furthermore, if this idea of mine does hit a major stride, with some improved graphics and the like, will adding the names of anyone involved with the creation of the engine be enough to avoid any plagarism issues?
Okay, so maybe I'm jacking the thread, but I can't help it. I give you the best of luck on this project...okay, maybe I can't give luck, but it's the thought that counts, right?
|
|
|
Logged
|
|
|
|
JonoPorter
Enlightened
Offline
Gender:
Posts: 656
Don't mess with the US.
|
Let me clarify something if you are confused about it. The demos in the physics engine are very basic. They were written to test the physics aspect of something. So in the demos there is no damage or energy use. That’s because in my mind physics only encompasses collision detection and applying impulse as a reaction (the homing missile logic is an exception.) The project this thread is talking about has a lot of thought put into a lot of code that wraps physics objects with damage and energy use for actions. I have yet to release any code of the project because I haven’t decided which license to release it under (or even made a SF project for it) and right now its in to much of a flux.
Nameless player;
Those are interesting Ideas.
I hope to make the game really easy to change so you could easily modify it and add what you want.
The plagiarism issue is already dealt with by the LGPL license I have it (the physics engine) released under. Thought I don’t claim to be an expert on how credit is given on a open source project I think just listing the names should be enough.
If you want to mess around with the more recent changes, the physics engine now has a SVN repository. svn://jmb.mine.nu/ultra/physics2d
To use this install: SVN
If you want to explore it with windows explorer use: TortoiseSVN
If you have VS 2005 you can use: AnkhSVN
Once its installed I think the comand to Dl a copy to your computer is called "check out"
The websites those are hosted on still confuse me.
|
|
« Last Edit: January 07, 2006, 12:34:28 am by BioSlayer »
|
Logged
|
|
|
|
NamelessPlayer
*Many bubbles*
Offline
Posts: 104
|
I don't know what you did-maybe it had to do with the optimized rays-but the new release certainly doesn't stress the old AMD Athlon XP 1800+ nearly as much. Hats off to you for not reminding me how much I need an upgrade!
Maybe it's a bit too early to be asking this, but how are the graphics handled? By the requirement of the DirectX SDK, I'd assume DirectDraw, but it seems you want to use SDL for the sake of Linux support(now if I could just get access to the Linux partition on my legacy PC...). If I want to develop a small game using this engine that runs on OSes that aren't Windows, that leaves me with SDL and OpenGL. I'm leaning towards OGL(since I believe it may have better hardware-acceleration support), but SDL seems to be worth considering. Note that I haven't started learning any of the graphics languages yet.
In case you're wondering why I asked about graphics, it's because I have a few ideas for spacecraft that I might want to crank out a few sprites for. In the case that polygons are used instead...how the heck would I make models compatible with the engine? 3ds max 8 won't install(problem with licensing process being unable to start-I think it's the fault of WinXP being somewhat botched after dealing with all of that damn malware; such a program would also be overkill for making 2D ships), so that's ruled out.
As for new ideas for my game using this engine:
-Maybe the power and/or range of the repulsor can be changed. Higher power levels will repel objects better, but will really eat into your ship's available energy. Also up for consideration would be the range of the repulsor, where higher settings will, of course, eat up energy.
-What about having the repulsor suck more energy as it repels objects? This could help with the viability of my next potential idea:
-I'm considering having ships mount more conventional weapon modules-generally things like machine guns, large cannons/railguns/etc. missiles, and mines-maybe even energy weapons. MGs fire lots of bullets, of course, and can be easily repelled; maybe some of the higher-powered ones can slowly bore through a repulsion field. Missiles will keep going until they hit something, and may or may not be repelled, depending on whether they are designed to DOR(detonate on repulse)or not; DOR missiles generally have a large explosion radius to deliver area damage through a repulsion field. Cannons/railguns/etc. fire single rounds at extreme velocities and require a VERY STRONG repulsor field to stop. Energy weapons, unlike the others, cannot be repelled and feed off of your ship's energy(who would've guessed?). I'll probably make them short-ranged MGs, for long-ranged ones would defeat the purpose of using repulsors.
Maybe I'm getting a little too in-depth with something I haven't even started working on yet, but it's probably better to integrate these features in the beginning than tack them on in the end, with a little room for modification afterward as needed-after all, optimization is a good thing. Now all I have to do is learn C#...(and hope that my programming teacher starts with the actual programming in VB .NET soon-that's right, I haven't even done a Hello World! program in class yet!)
|
|
|
Logged
|
|
|
|
Deus Siddis
Enlightened
Offline
Gender:
Posts: 1387
|
"However, you do have a repulsor device, which can be used to send projectiles, asteroids, ships, and the like flying away."
That just gave me an idea. What if you had a repulsor line, that you could orbit around your ship ( or whatever). When when things shot at you, you could move your shield in place to block them, and at the same time, send it bouncing out into space or into another enemy. If you missed blocking it, and got hit, you take damage or die. Sort of a Jedi lightsaber game or something similar (you could even make it so if you got close enough, you could hit an enemy with your lightsaber thingy and damage or destroy them.)
|
|
|
Logged
|
|
|
|
NamelessPlayer
*Many bubbles*
Offline
Posts: 104
|
"However, you do have a repulsor device, which can be used to send projectiles, asteroids, ships, and the like flying away."
That just gave me an idea. What if you had a repulsor line, that you could orbit around your ship ( or whatever). When when things shot at you, you could move your shield in place to block them, and at the same time, send it bouncing out into space or into another enemy. If you missed blocking it, and got hit, you take damage or die. Sort of a Jedi lightsaber game or something similar (you could even make it so if you got close enough, you could hit an enemy with your lightsaber thingy and damage or destroy them.)
Interesting, but I'm not sure how that would work in the case of possible energy constraints.
Maybe, when I whip something up, I'll implement both methods and collect feedback to tweak as necessary, and find out if I should dump one of them. Heck, you just got me thinking about different repulsor types(which I'm not sure if they should be unique per ship or not-they definitely don't come in module form! Or maybe they should...)!
|
|
« Last Edit: January 07, 2006, 07:04:38 am by NamelessPlayer »
|
Logged
|
|
|
|
|
^Nytro^
Zebranky food
Offline
Gender:
Posts: 43
BiG BeEf DiNnEr.
|
That screenshot is f***in' impressive, way to go. that's a hell of a point-defence there.
|
|
« Last Edit: January 07, 2006, 09:27:59 pm by ^Nytro^ »
|
Logged
|
|
|
|
evktalo
Frungy champion
Offline
Posts: 50
|
These shots are really enjoyable.
There's an artistic quality.
--Eino
|
|
|
Logged
|
|
|
|
Deus Siddis
Enlightened
Offline
Gender:
Posts: 1387
|
Hmm, when my masters have weapons like that, I think I'm better off remaining a slave.
Damn cool stuff !!!
|
|
|
Logged
|
|
|
|
|
JonoPorter
Enlightened
Offline
Gender:
Posts: 656
Don't mess with the US.
|
I just made a sf.net project page for this. Currently the name is “The Ur-Quan ReMasters.”
Though there is nothing there at the moment here is the link to it: https://sourceforge.net/projects/sc2-remake
|
|
|
Logged
|
|
|
|
JonoPorter
Enlightened
Offline
Gender:
Posts: 656
Don't mess with the US.
|
Guess what I have finally got the game to the point where I can take screenshots. But before I go on let me explain something: All the screenshots before this one have been simple demos in my physics engine. Objects had no damage and could not die. They had no special logic to govern health energy or the recharge of either. They did not even have values for this. Also the “Weapons” you say in use were hard coded to the users ship no matter what it looked like. Also all user controls were hard coded for that single object. The project you are about to see a screenshot from is a wrapper of the physics engine giving objects these values and ways to effect them. Right now it still uses DirectX for graphics and user input. So the screenshot itself isn’t all that exciting but what it shows is. The Druuge Ship on the left has a dynamic controller attached to it that me to control it. The one on the left has died because I shot it a few times. When the druuge ship dies its parts are turned into objects that are governed by the physics engine and several explosions are created along the ship to scatter them. The hope it that later in game development there will be fields of debris to show how deadly a battle was. I even might make them “asteroids” for the probes.
I started with druuge because they are one of the simpler ships in terms of game logic. I don’t know what ship I should code next… any Suggestions?
|
|
|
Logged
|
|
|
|
|
|
|