Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - stormbringer

Pages: [1] 2 3 4 5 6 7 8 ... 22
1
General chat / Re: Donations
« on: November 14, 2011 »
you are welcome mate! It was about time for me to shake my lard and give back a bit of what I received for many years

2
Projects / Re: [XMAS 2010] Paddymas
« on: December 18, 2010 »
This is very good! I loved the bad Mario.. but shouldn't Santa be puking after a while???

Thanks for the greets and best whishes for Xmas & New Year to you too!

3
Coding tutorials / Re: TUTORIAL #4 - 2D Stars
« on: September 23, 2010 »
thanks guys!

sorry for not having posted the other tutorials I wanted to post.... I just ran out of time.. I'll try to post one soon..


4
Projects / Re: Remake 20 - CopperCabana
« on: February 25, 2010 »

5
Coding tutorials / Re: TUTORIAL #1 - Setup
« on: December 07, 2009 »
@James: what version/compiler do you use?

6
@rbz: I wish I was a good hacker.. but actually I was just curious and well motivated for this investigation.

Now for all of you who want to get into this, I will not spread any code that does not belong to me here, especially when the source belongs to a company with an army of lawyers... but if you still want to open the gates of hell, just google for this:

pspdevsrc1.zip

You will get the SDK ;)

The SDK is written in C but it heavily relies on the PSP internals. So it won't compile in a snap of fingers on your PC. Now if C and OpenGL are familiar to you, it should be fairly easy to understand what's in there and rebuild something similar for PC.

Once I got the SDK, it became an "easy" task to extract the textures and 3D objects. It will still take you hours (if not a few days) not only to adapt the core of the SDK but also to understand how to use it.

During the 2007-2008 winter holidays I spend 10 days trying to rebuilt this and finally made it. I managed to get the objects displayed through OpenGL with textures and lighting and also understood the difficult part: how animation works.

Once I had all this, I started on the most exciting part: rewriting the game.... and ohh man! that's the biggest challenge.

The first step was to rewrite the SDK portions with my own code just for the sake of being able to develop properly. Why? well because on the PSP lots of things are stored in a PSP friendly format (vector arrays, coordinate textures, etc). The PSP being limited in resources, some things are packed/compressed, rearranged to use the PSP hardware. These things do not exist on PC.

After this huge amount of work, I realised that I could not rewrite the game without writing some more tools to build the game levels. As a matter of fact, the game levels are made of various 3D objects, not just simple bitmap tiles. So it was obvious that an editor was needed. I'm still working on this as I write. But how exciting.


Here is a preview that Shockwave was talking about:

http://rapidshare.com/files/316528325/media.zip.html

As Rapidshare is limited in terms of download and since the archive will be removed after 90 days, it would be great if one of you could mirror this in a place that is more reliable.

Comments awaited!

7
@Shockwave: thanks mate! GnG is my favourite game ever. Determination in this case was easy to have for me and the actual search for information was really exciting.

After this success, I went to a game shop and bought a PSP and Ultimate GnG, the PSP version of the game. It was important for me to understand the game visually in order to have a better understanding of the data I was getting out of the archive.

While I started to get the textures out of the game archive I also noticed that the textures were duplicated in a lot of places. That seemed weird because I did not understand first why they were not just stored once. I also read a bit more about how Capcom worked on the game. This helped me a lot. Capcom split the game in levels. Each level was given to a specific team that had the responsability to develop it. It made then a lot of sense. When you play the game, the game loads the levels one after another. Sometimes the same objects/characters appear again in different levels but with different colors/textures. Looking again in the binary, I observed then that the levels were stored as entities in the final package. Each one had its textures and 3D objects, even if they were duplicates.

The real challenge was for the 3D objects.. I naively started to reproduce the 3D objects manually.. some simple ones.. like a bridge element and used the freshly ripped textures. After a few funny hours I understood that it was not realistic to rebuild the game that way. While I clearly dropped the possibility of reusing the code (after all it was all compiled for the PSP, how could I reused it??), I felt that it was mandatory to get the specs for the famous GMO objects (the actual 3D objects).

During my research, I also understood a lot about the PSP graphics pipeline. Through the Homebrew PSP SDK, I learned that PSP graphics pipeline was similar to OpenGL, not to say that it was highly inspirated from it.

 

8
General chat / Re: Intro-Inferno gone :(
« on: December 04, 2009 »
yep! I noticed that this morning.. too bad... I uploaded a huge amount of intros there... but also I remember that Druid put so many rules and controlled so much the site that it became less and less attractive to people...

too bad, too sad

9
@relsoft: the ISO contains what is on the PSP game CD. Usually in there you have a couple of folders that are necessary to boot up the game and then a huge file, which is the game archive. Not all the games have the same structure though.

The game files can be compressed, although this does not always happen because there is enough room on the CD for the game. Most of the time, the game data is just aggregated with the code in the archive.

What I did for a start was to open the huge binary with a hex editor. I usually start with this method to detect visually the structure of the binary. In this case, one can quickly observe that the huge file is a id/chunk structured file. there are 4-bytes signatures for chuncks followed by what could be sizes for the chunks or offsets. Very similar to file formats derived from EA-IFF on the Amiga.

While looking further in the file, I observed portions that looked like a binary mess, usually where the game code is. Then large (even huge portions) with more regular patterns, usually where the graphics are... and suddenly I stopped in a region that looked like a knight's helmet! That was the first hint for a game like Ghosts'n Goblins, wasn't it?? I saved that part of the file as a RAW image and opened it in Photoshop. Indeed, it was a knight's helmet. I then continued in the binary file and found something that looked like a sword or a stick. This time it wasn't just luck. I was simply looking at some of the bitmaps in the file. I did the same thing with Photoshop, and yes, it was a sword. Colors were not right, but the shape was there.

Then I looked again a few bytes before the beginning of the portion where the helmet's data was and found a signature that said "PIC" => gotcha! Looked like  I found the header of a bitmap file. I compared that with the data portion where the sword was, and found the same thing! Then I started to look at the bytes after the signature and found some classic numbers there: 32, 64, 128 etc... classic texture dimensions for a console game.

After this small success I wrote a small ripper that looked for the signature and  extracted the RAW data using these magic numbers. I ran the small piece of code and my little exe started to spit dozens of files. Some worked, some not. I got helmets, potions, weapons, wall textures, etc.

The files that did not work, were of two kinds. Some were just a mess of pixels, others were almost ok, but not perfect. However these almost perfect bitmaps reminded me a lot of RGB16/RGB15 encoding used in the Targa file format. Again I tried to look at the bytes near the file header and yes, I found that there was an extra byte that was set on some specific value for the images that were ripped fine, another value for those that worked almost and a third value for those that did not work well.

Again I refined my code and tested the possible case of RGB16/RGB15 encoding. And... it worked... I was now getting over a thousand textures.

I then started to look on the net about PSP file formats and did not find much, except some hacked tools to change the PSP themes. There I got more information about the picture file formats. I improved my ripper and also observed that in the package, there were other file formats, like PNG, true TGA and the PSP format GIM (GIM... IMG.. IMaGe.. well intuition worked well).

I then searched over the internet and gamer forums about all this... very little information... but found a link on a chinese website. All was in chinese, but the re was a brief description of the GIM header. Byte offsets. But the description was in chinese. It was time to use some online translation to reveal some secrets. And secrets were revealed. The guy that posted that on the internet was apparently working for Sony in China. He must have been part of the team in the test dept of Sony's factory... That became really exciting. The translation was very poor of course, but the website mentioned a zip archive that was part of the SDK for the PSP, where the format was described! Of course no link of that SDK.

I then searched for that zip archive and found two interesting links. One on the Sony's PSP website that was talking about the SDK for game developers and briefly described the contents of it. One could request to become an official PSP developer to obtain the SDK, but besides the fact that you had to pay for it, Sony does not guarantee you that you will become an authorized developer. Their decison is really up to them and they could simply refuse your request because they do not see a fit between you and their goals! Great, forget about Sony!

The second link was leading me to a russian website! Ahaaaa... That was easier to translate! The website mentioned that someone, somewhere had the zip archive I was looking for... because he was part of a team that worked on a game for the PSP! Classic thing... it happened during the Amiga day... game developers were former hackers and often the information got out of secrecy through these obscure pipelines.

I then started to seach for the zip archive, the handle/nickname of the "famous" source and a few porn sites later found a hidden page with the zip archive! Bingo! I opened the zip file and heard the heaven's bells ringing! It was the actual C headers that described the file format!

Back to my little ripper, I started to improve it and found that the bitmap files were using the texture format required by the graphics pipeline on the PSP. Several references in the header files gave me links on the Homebrew PSP websites. There I found about the PSP internals and data formats. That helped me a lot and I perfected my ripper. I learned that there was a 3D object file format, the GMO. But that is another story...

10
yes I'm working on the full game.. but I wish I had the amount of time required to finish this utopic project.

The problem is that I ripped the textures and 3D models from the PSP game by Capcom... I'm not sure I can release this so easily without having some unpleasant lawyers knocking at my door.

Anyway, testers are welcome.. need to find a way to publish a version with the 40MB zipped textures and objects... any idea?

11
Projects / Re: AN Cool - Amiga Joke Remake
« on: October 05, 2009 »
muahahahaha

really great! Expect severe retaliation muahahahahaha

NOTE TO SHOCKWAVE: maybe you have a theme for a compo here...

12
Projects / Re: More ST Remakes
« on: September 17, 2009 »
dbug15b_t1.exe works very fine now! congratulations


dbug15b_t2.exe runs too fast (timer problem?)

13
Projects / Re: More ST Remakes
« on: September 16, 2009 »
could it be some DirectX thing that I do not have? what version are you using? I essentially work with OpenGL so I do not always have the latest DX DLLs....

14
Projects / Re: More ST Remakes
« on: September 16, 2009 »
@padman: sorry mate, still the same "Cannot open screen" error. It must be a small thing because your first remake worked fine for me. Are you using OpenGL or DirectX? or GDI?

Feel free to send me any version you would like me to test

15
Coding tutorials / Re: OpenGL framebuffer library
« on: July 03, 2009 »
I also noticed that a lot of OpenGL framebuffer libs here use DrawPixels. This has been marked as deprecated in OpenGL 3.0 (and potentially removed in a few years). It's a very old method of updating stuff in the OpenGL frame buffer and has been left out of hardware acceleration by most drivers (especially on laptops and small systems). For future proof, hardware accelerated bitmap transfers, you should always create textures with glTexImage1D/2D/3D and update the texture buffer with glTexSubImage1D/2D/3D.

Textures can then be used in shaders, can be used for texturing primitives and benefit from the latest OpenGL extensions and of course hardware acceleration.

16
C / C++ /C# / Re: Best C++ IDE & Compiler to use?
« on: July 03, 2009 »
I still use VC++ 6.0 for fun and professional work. Works perfectly fine, but of course forget about .net.... will you ever use that?? unless you write specific apps for the Windows platform, .net is of no use (plus it comes with a few hundred megs of DLLs which eat up your hard drive space very quickly).

I also use Express 2008 when needed, but I prefer the simplicity of the VC++ 6.0 IDE which is fast (no bells and whistles).

It all depends on what you plan to do. VC 6.0 is good for learning, but if you plan to use some static libs compiled by others with newer versions of VC, then pick Express 2008 (or a non-free version if you have money to spend)

17
Coding tutorials / Re: Overview
« on: June 25, 2009 »
more to come this week-end..

18
Projects / Re: Strand Complex Zero
« on: June 21, 2009 »
@syn9: here is an explanation on how to use your TGA files as arrays of bytes directly in your C/C++ source code (I assume you code using these laguages):

http://www.dbfinteractive.com/forum/index.php?topic=3258.msg43572

regarding FreeType, go to www.freetype.org, it's all there. Maybe I should write a tutorial about this great 100% FREE lib..

19
Projects / Re: Strand Complex Zero
« on: June 20, 2009 »
really impressive visuals here!!! congratulations

I do however have some comments about the size of the prod... it's just too huge! You can improve a lot by:

1) using a 256 colors texture (just convert the file bg0.tga to paletted mode, it would look just as good, I just tried that under Photoshop, no quality loss)

2) maybe you could reduce the resolution of the textures by a factor of 2 in each dimension, you will have a slight loss of quality, but you can use a bilinear filtering and combined with the motion, your eyes will be fooled

3) about Freetype.... I used it everyday and I do not understand why your freetype6.dll is so huge!! freetype is really made to be used for small portable devices... maybe you should check how you compile your DLL.. is it in Debug mode?

4) are you planning to use the whole set of characters in the fonts included in the prod here? if not you can just extract bezier shapes of the glyphs you are interested in and just render these. It will save some precious space... This also applies if you do not need all the info stored in the font files.. FreeType has nice APIs to do this

5) maybe a single file version?? freetype can be easily embedded in your .exe just as the fonts (freetype can load from memory, not only files)

6) as other said, add a cool tune and release it. It kicks ass, seriously

20
Projects / Re: The Game Scene Charts (MAY)
« on: June 19, 2009 »
I feel "normal" these days hehe. But back then we were in the late 80's hehe, different story. If you go to Facebook and check the pictures on the group Alcatraz, you'll notice that Hardrider was a huge fan of The Cure and back then he had a funny Rober Smith-like hair cut. Now he looks like a sexy playboy and successful nightclubber :D :D :D

BTW, just saw a picture of Omega Supreme / The Shadows (C64). So funny... he barely was a teenager and I'm quite sure he did not play the smart ass in the school yard... but when you read his scrolltexts, he was so arrogant for his age,.. anyway, I really like how the scene was back then... meaningless but so beautiful and coloured ;)

Pages: [1] 2 3 4 5 6 7 8 ... 22