Miru Posted June 26, 2014 Report Share Posted June 26, 2014 (edited) Hey guys, anyone remember the BlitzSonic based game "Sonic World"? Well, I played it and was instantly hooked on the diverse character roster, well-done levels, great music, and enemies being tougher, more varied, and more numerous than what you would expect from a BlitzSonic-based game. However, despite the fact the game is so great, it still has several flaws, most inherent to the BlitzSonic engine: * The controls are kinda slippery, like in say, Sonic Universe. I know the Dreamcast era (which the game was overall trying to emulate) was generally on the slippery side, but this slipperiness still felt rather annoying, * The game spent more than a while to load. * The game was rather hard to edit if one lacked Blitz3D knowledge, and Blitz3D is a paid program (not to mention outdated). * I felt that many characters should lack the spin dash, to make them even more diverse. I eventually decided to test out UDK and Sonic GDK, to create my own game, but ran into technical difficulties in converting the .b3d models of the characters into UDK compatible formats, to increase the breadth of content. So, I decided to browse Sonic United for reference, and there I found a port of BlitzSonic into the Unity engine, created by neoshaman. I downloaded the port, and got Unity to work on it. I immediately thought, "Why not do a Sonic World port using this?" And so I started work on this port. This port will not just be a plain old bugfix affair; it will also have some enhanced features. An example would be amusing, cartoony death animations (but only for the females). I want to thank neoshaman for his work on porting BlitzSonic, and Ozcrash for creating Sonic World. Edited June 26, 2014 by Miru Link to comment Share on other sites More sharing options...
GSF Posted June 26, 2014 Report Share Posted June 26, 2014 Uh, just a little note here: Sorry, but you can't use HTML in your posts. To embed videos use the youtube tag. Link to comment Share on other sites More sharing options...
Abominal Taz Posted June 26, 2014 Report Share Posted June 26, 2014 Can you actually re-post that vid. I was trying to fix it but got the link fouled up. My bad. Link to comment Share on other sites More sharing options...
Ricardo Raiohardt Posted June 26, 2014 Report Share Posted June 26, 2014 (edited) Sorry for ask, but when you was trying to import the characters into UDK, have you followed the documentation steps? Those can be found here: http://udn.epicgames.com/Three/FBXPipeline.html Since it uses FBX format, any autodesk software or other softwares with an FBX exporter updated can do the work. Now, if you suceeded to import things and had trouble inside UDK, there are some basic stuff to do to make animated objects and characters work there, and a setup for making characters. If you need any help to try again I can try to help you with it. Edited June 26, 2014 by Ricardo Raiohardt 1 Link to comment Share on other sites More sharing options...
Miru Posted June 26, 2014 Author Report Share Posted June 26, 2014 Sorry for ask, but when you was trying to import the characters into UDK, have you followed the documentation steps? Those can be found here: http://udn.epicgames.com/Three/FBXPipeline.html Since it uses FBX format, any autodesk software or other softwares with an FBX exporter updated can do the work. Now, if you suceeded to import things and had trouble inside UDK, there are some basic stuff to do to make animated objects and characters work there, and a setup for making characters. If you need any help to try again I can try to help you with it. Thank you very much for your help. I am now succesfully converting a Blaze model for UDK so she can be in my bigger project. By the way, I'll add a development screencap soon. 1 Link to comment Share on other sites More sharing options...
Ricardo Raiohardt Posted June 26, 2014 Report Share Posted June 26, 2014 Thank you very much for your help. I am now succesfully converting a Blaze model for UDK so she can be in my bigger project. By the way, I'll add a development screencap soon. Ah, great! Anything else, you can talk to me and I'll see a way to help you. I hope to see how things go well soon. Link to comment Share on other sites More sharing options...
Miru Posted June 27, 2014 Author Report Share Posted June 27, 2014 I've now decided to dig through the original game's code to see what makes everything tick so I can get the up-porting at the very least spot-on, if not enhanced. I've already ported in the levels, character models, Badnik models, textures, interface elements, and a few bits of miscellaneous code from the original in, but haven't really hard-wired anything yet, although I have begun to set up a C++ Script for interpreting the XML level select, and have been going off an online tutorial to make the XML interpreter files work. However, I don't think I've acquired all the code from the original just yet. Further, I've also added levels from "Sonic Universe" and a few additional character models. I think they will probably just be bonus levels here, but maybe I will tackle a port of "Sonic Universe" once I am done with this one. Link to comment Share on other sites More sharing options...
SonicFan2010 Posted June 27, 2014 Report Share Posted June 27, 2014 (edited) I had that same feeling when I play those Blitz3D games. They all feel too loose. You can die too easily. Edited June 29, 2014 by SonicFan2010 Link to comment Share on other sites More sharing options...
Nemox Posted June 27, 2014 Report Share Posted June 27, 2014 I had that same feeling when I play those Blitz3D games. They all feel to loose. you can die too easily. The solution is surprisingly easy actually. Instead of turning how they do now, they should rotrate their velocity relative to the ground normal, towards the desired velocity, with a clamped radian * deltaTime. The character's own body should turn at the same rate. Link to comment Share on other sites More sharing options...
Pulse0 Posted June 27, 2014 Report Share Posted June 27, 2014 (edited) The solution is surprisingly easy actually. Instead of turning how they do now, they should rotrate their velocity relative to the ground normal, towards the desired velocity, with a clamped radian * deltaTime. The character's own body should turn at the same rate. Nemox : Surprisingly easy = *&@^$(Q#YRg#h()d#&(#ygf@)( #j()@)_!()_y(*y%(*@_(@!_$&@*tui@()rq#f*uh#gf *r* _!()_$*&^%&&_(()@_(*(^$@(**#)@&^*&!%*!($&^*^%*@#($*_!)(#()*$*@^ rate. remember kids - you can understand geniuses. --------------- on a serious note - can you explain that for beginners, for a stupid not as yet coder like me Edited June 27, 2014 by Pulse0 Link to comment Share on other sites More sharing options...
Nemox Posted June 27, 2014 Report Share Posted June 27, 2014 Nemox : Surprisingly easy = *&@^$(Q#YRg#h()d#&(#ygf@)( #j()@)_!()_y(*y%(*@_(@!_$&@*tui@()rq#f*uh#gf *r* _!()_$*&^%&&_(()@_(*(^$@(**#)@&^*&!%*!($&^*^%*@#($*_!)(#()*$*@^ rate. remember kids - you can understand geniuses. --------------- on a serious note - can you explain that for beginners, for a stupid not as yet coder like me I'm not sure what BlitzSonic is doing to turn characters, but I think they accelerate characters in the desired direction. Instead, their velocity should be rotated. You have a current velocity and a desired velocity. Find the rotation from current to desired. Clamp that angle by however much you want the character to rotate over time, or else it'll be like '06. Then rotate the current velocity by that rotation. Link to comment Share on other sites More sharing options...
Miru Posted June 27, 2014 Author Report Share Posted June 27, 2014 (edited) The solution is surprisingly easy actually. Instead of turning how they do now, they should rotrate their velocity relative to the ground normal, towards the desired velocity, with a clamped radian * deltaTime. The character's own body should turn at the same rate. Alright, note taken. I'll change this up. EDIT: It's a lot of hard work to code a bunch of XML files to interpret the levels and such. Also, it turns out the playable characters and their moves are not determined by an XML file, rather, by a code within Sonic World itself. The BlitzSonic Unity code I am currently working with is based on the original BlitzSonic, so I might have to edit it manually, but I am likely to reverse-engineer Sonic World (or ask for source code from the dev team) to obtain some more bits of code for the characters. Also, enemies are also not determined by an XML file. I'm also collecting as many BlitzSonic stages as possible because the engine is not capable of freely loading XML files for stages, and they have to be added before the game is published. EDIT: Almost all the code in the "stage" file seems to be dummied out. However, when I play the tech demo that neoshaman made, it works just fine, even though the code appears exactly the same. Edited July 3, 2014 by Miru Link to comment Share on other sites More sharing options...
Miru Posted July 18, 2014 Author Report Share Posted July 18, 2014 I've decided to use Neoshaman's code as a reference only rather than as the main code of the game, and re-do everything as a Prefab. Link to comment Share on other sites More sharing options...
Miru Posted July 19, 2014 Author Report Share Posted July 19, 2014 Currently trying to decompile the original Sonic World to make the port more accurate, and find things like animations, because they oddly don't crop up in Unity. Link to comment Share on other sites More sharing options...
Recommended Posts