Page 1 of 2

Potential Codeblast 2013 entry (WIP)

Posted: December 18th, 2012, 3:44 pm
by xdaniel
"Potential" because I have no idea if I'll stick with the project. It's relatively simple - or rather, difficult in different ways, compared to my stalled shoot'em up - in that it's a puzzle game; basically Tetris Attack with a few twists here and there. The original plan had a bit more original gameplay, but what I got implemented of that didn't feel all that fun... it was better on paper.

One certain goal I do have is 640x480 throughout the entire thing, yet with appealing visuals (in reference to the limited framebuffer space when using that resolution)... besides trying to finish it in the first place, of course. Anyway:

Image
Image

The night's work, plus the main debug menu thingy; somewhat playable but kinda glitchy. Well, we'll see how it goes...

Re: Potential Codeblast 2013 entry (WIP)

Posted: December 19th, 2012, 12:21 am
by Xavi92
Cool stuff bro! What about Project Gunmary?

Re: Potential Codeblast 2013 entry (WIP)

Posted: December 19th, 2012, 8:27 pm
by Shadow
Pretty amazing work. You should finish it off and get the glitches fixed.

Re: Potential Codeblast 2013 entry (WIP)

Posted: December 20th, 2012, 6:25 am
by xdaniel
Xavi92: GunMary's on hold right now. I'll see about picking it up again after this, tho when that'll be remains to be seen - Spring or Summer, I guess?

Anyway, as for this game, I've looked into possible ways of getting sound into it, with VAGs looking good for sound effects (thanks to PSXDEV.net's VAG example code). I'll rummage through the sound-related stuff in the SDK and documentation for some more info on that in general, and music playback in particular later - if nothing else, I'll try to do normal CD audio.

But first, I'll set up the SDK on my laptop, in case I'll find some time to work on the game over Christmas at my family's place, as well as set up a SVN server on my machine here, so that I don't have to manually juggle backups or different version of the code.

Re: Potential Codeblast 2013 entry (WIP)

Posted: December 21st, 2012, 9:46 am
by xdaniel
Some SVN commit messages from yesterday and today, telling of some of the progress being made:

Code: Select all

- makefile update; removed unneeded variables & lines, reshuffled some lines, added some comments
- Main game code rewrite WIP; no resolving etc. yet
- In-air delay on panel movement removed, caused too many tiny glitches; maybe try reimplementing that someday, otherwise maybe add vertical panel swapping instead?; also fixed cursor sprite mirroring
- Added panel resolving, line advance and some animation, fixed logic bugs and visual glitches, maybe other things; some 15-20 minutes of play didn't show any glaring errors
...and some (far from informative) screenshots:

Image
Image

Edit; my first ever try at AI programming...

Code: Select all

Patched together a REALLY dumb AI, it -is- capable of clearing panels but it's quite shortsighted and such
...although I guess "shortsighted" is an understatement -.-

Edit #2; actually, another screenshot, me VS the dumb AI:

Image

Re: Potential Codeblast 2013 entry (WIP)

Posted: January 3rd, 2013, 5:35 am
by CosmoGuy
Hi

Awesome dude! Keep the work! :)

Re: Potential Codeblast 2013 entry (WIP)

Posted: January 3rd, 2013, 9:15 am
by xdaniel
Latest changes on the SVN:

Code: Select all

- Christmas/new year's changes, bunch of stuff
- Logo stuff changed; replaced disclaimer with Codeblast '13 logo & swapped screen order
- Some AI tweaking, still stupid & still does OOB moves that screw up the field, need more bounds-checking!; minor changes to the future title screen and demo mode; slightly altered/fixed proportional font
Didn't really get to do much over Christmas; I pretty much just added the skeletons for the title screen and attract demo mode, I believe...

Two new screenshots: first up is the Codeblast logo screen, think I need to make this a bit brighter. Second is the (so far) very rough title screen - and contrary to what it says, pressing Start does nothing right now.

Image
Image

Re: Potential Codeblast 2013 entry (WIP)

Posted: January 3rd, 2013, 2:36 pm
by Shadow
I love it!

Re: Potential Codeblast 2013 entry (WIP)

Posted: January 3rd, 2013, 2:37 pm
by Shadow
I will need to update the logo. We are no longer PSDEV. We are now PSXDEV.

Change it to this: http://i.imgur.com/7Qa7O.png
It is a transparent PNG that is non-antialiased, so you can easily change colour, transparency, etc.

Re: Potential Codeblast 2013 entry (WIP)

Posted: January 10th, 2013, 12:48 am
by xdaniel
One SVN change, haven't been coding much due to RL stuff:

Code: Select all

- Improved/changed asset management somewhat, added loading screen for when assets are being loaded (via VSyncCallback); updated Codeblast logo
...thus there's not much new to see:

Image
Image

(Filename/path on loading screen only displayed in debug builds; also the CD icon kinda sucks, but that's certainly of low importance right now)

Re: Potential Codeblast 2013 entry (WIP)

Posted: January 10th, 2013, 12:57 am
by Shadow
Looking good!

Do you know how to master a PSX CD-ROM with XA audio tracks, DA and STR?
I sent a message to 'isufje' for sharing some light on the subject, but I yet wait to receive a reply back from him.

Re: Potential Codeblast 2013 entry (WIP)

Posted: January 10th, 2013, 1:11 am
by xdaniel
Shadow wrote:Looking good!

Do you know how to master a PSX CD-ROM with XA audio tracks, DA and STR?
I sent a message to 'isufje' for sharing some light on the subject, but I yet wait to receive a reply back from him.
Sadly not. I just had a quick look through the Psy-Q SDK's samples, and while \addons\scee\CD\XAPLAYER might be promising for XA audio, the CD has to be built using BuildCD (\bin\OtherTools\buildcd) - which apparently is a 16-bit application, so I can't run it on Windows 7 64-bit. I might look into this some more, since I'm also looking for a way to add music to the game - perhaps I'll try to use BuildCD in DOSBox or something - but I can't promise I'll be able to get it to work.

EDIT:

I'm still experimenting, but I did manage to build a working CD image with DOSBox, GenCTI, BuildCD, and one that doesn't make pSX spout "read sector out of range" errors even. I haven't tried XA audio yet, but I'm hopeful that'll work as well. Here's my preliminary notes, hope they make some sense:

Code: Select all

- use cdemu\BIN\Gencti.exe (16-BIT!!) on CD root folder
- in cti file...
  - set SystemArea to a license file
  - make sure system.cnf is first file, main EXE is second
  - remove unneeded files (Gencti itself, cti file, etc)
- use bin\OtherTools\buildcd\BUILDCD.EXE (16-BIT!!) with cti file & -i option to create image
- use cdemu\BIN\STRIPISO.EXE (16-BIT!!) -or- "Revenge of StripISO" on created image file...
  - select correct sector size! (2352(RAW), 2336(XA), 2048(MODE1) Default=2336 ?)
- relicense new image file with DiscPatcher.exe

Re: Potential Codeblast 2013 entry (WIP)

Posted: January 10th, 2013, 1:58 am
by Shadow
Yeah, you should not use Win 64-bit for Psy-Q. It will be a problem.
I may make a Windows XP Virtual PC HDD image for people to download that is ready to go.

Anyway, I have been trying to make an XA mastered PSX CD-ROM.
These are the steps I take, but I always end up with a non-bootable PSX CD.

Let's say I have these files:
cdrom:/system.cnf;
cdrom:/main.exe;
cdrom:/xa/song.xa;

I use CDGEN to put all the files on the disc (all setup correctly I believe with PLAYSTATON as the publisher, and the license file included correctly), which makes a CCS file for me.

I then use CCS2CTI to give me the CTI file.
From there, I use BUILDCD -ixa.img xa.cti.
Finally, I use STRIPISO 2336 xa.img xa.iso (not using the 's' switch).
I then use copy /b licensee.dat+xa.iso xa_final.iso to inject the license file to the first 16 sectors of the disc image. Though, I find Losers BootTool works much better in this case.

My CUE sheet is as followed.
-------------------------------
FILE xa_final.iso BINARY
TRACK 01 MODE2/2352
INDEX 01 00:00:00
POSTGAP 00:02:00
-------------------------------


*EDIT*
Nice work! I'll follow your steps and i'll see if I can get XA burned correctly, as well as have an actual bootable disc. If you can, screenshots of your process would be useful, or better yet, a video on YouTube.

Re: Potential Codeblast 2013 entry (WIP)

Posted: January 10th, 2013, 2:24 am
by xdaniel
Shadow wrote:Yeah, you should not use Win 64-bit for Psy-Q. It will be a problem.
I may make a Windows XP Virtual PC HDD image for people to download that is ready to go.
It's a bit of a pain if there's no 32-bit replacement available for the affected programs, like with BuildCD here, but compiling code works fine on 64-bit Windows with a little help from MinGW for ex. Make.

That said, I just found a kind of command line-based DOS emulator called MS-DOS Player which allows one to run 16-bit command line applications on 64-bit Windows pretty transparently, by just running "msdos gencti <parameters>" instead of "gencti <parameters>". The downside is that BuildCD doesn't work with it, apparently because DOS Interrupt 21h 38h isn't implemented...

EDIT: StripISO doesn't work in MS-DOS Player either (Interrupt 15h, AH=C0h, AL=10h, whatever that is exactly), but that one's got a replacement in the form of Revenge of StripISO...
Shadow wrote:*EDIT*
Nice work! I'll follow your steps and i'll see if I can get XA burned correctly, as well as have an actual bootable disc. If you can, screenshots of your process would be useful, or better yet, a video on YouTube.
Still need to refine the process and automate it wherever possible - ex. integrate everything into the Makefile -, but I'll see about making a tutorial or video about it once that's done.

Re: Potential Codeblast 2013 entry (WIP)

Posted: January 11th, 2013, 2:06 am
by Shadow
Okay. I made progress today, and got the XA burnt correctly and working. However one problem is that the XA file plays extremely fast. Probably a software problem either in my code, or in me encoding techniques in making an XA file from a WAV file.

Anyhow, I mastered a PSX CD-ROM and it boots perfectly with no errors in the PSXFIN debug console!
I'll make a guide later on for perfect disc mastering once I fix the XA problem.

Re: Potential Codeblast 2013 entry (WIP)

Posted: January 11th, 2013, 2:59 am
by xdaniel
Great to hear, looking forward to the guide! :D

As for the sound playing too fast, I'm guessing there's a mismatch between the sound frequency or some other parameters of the XA file and your code, but I can't be sure.

Edit:

Code: Select all

- Panels now use asset loading mechanism, added "variable" asset loading for that (loadAssetVariable); still needs some more error checking to really be foolproof
- Moved some typedefs/structures from game.h to a general header file, might be useful outside the game code itself; began improving title screen visuals, added background color cycling; other smaller changes
[youtube]http://www.youtube.com/watch?v=L-aeNU62dCo[/youtube]

Re: Potential Codeblast 2013 entry (WIP)

Posted: January 11th, 2013, 7:02 pm
by Shadow
I gave up trying to get XA playback working. You will have to take the lead and try to get it working :(
I will have to stick to VAG audio and DA audio which sucks. XA has a 4:1 compression ratio iirc, and keeps the CD-ROM spinning at 2x to ensure no delay in seek times which is much better.

I could not make an ISO using "STRIPISO S 2336" as it would simply not work.
So, I used "2352" instead, and that booted perfectly fine. Problem was, that the XA audio did not work correctly (it played way to fast as mentioned above). I tried both modes for XA in the KHz selection window in MC32.exe. No luck.

Bright side: With all the CD's iv'e wasted, I can probably build a house :shrug

Re: Potential Codeblast 2013 entry (WIP)

Posted: January 15th, 2013, 7:27 am
by xdaniel
Hrm, guess I'll experiment with XA a bit more later this week then... In game-related news, here's some more recent changes to report:

Code: Select all

- Beginning of the visual style change, going from cartoonish to sleek/simple; big font changed, panel style changed (will re-add the previous one as an alternate), still more graphics to change
- Added gamemode for main menu; made Start on title screen advance to menu; tiny modifications to big font (some letter heights, fixed lowercase E)
- More main menu work, minor changes elsewhere (title BG)
...and here's the beginnings of the main menu. The "rotating circle thingy" is temporary; I'm still trying to get it to look the way I want:

Image

Edit:

Code: Select all

Modified big font, slightly improved menu graphics; added controls to menu; made menu actually -work- and get the player in-game; rearranged startup menu
...resulting in:

Image

Re: Potential Codeblast 2013 entry (WIP)

Posted: January 15th, 2013, 12:34 pm
by Shadow
Please do try to get XA working. I just did some more testing, and it turns out, it's NOT my burning method.
It is how I have made the XA file from the WAV.

Anyway, your game is very nice. You are doing a fantastic job!
Look's like I've got some serious competition.

Re: Potential Codeblast 2013 entry (WIP)

Posted: January 15th, 2013, 10:33 pm
by Xavi92
This game looks absolutely awesome! Keeping it to 640x480 was a great idea indeed. :clap