As you might have seen on
orx's news page, I've decided to pause all my developments on orx for about a month and spend my free time to work on an entry for the
latest TIGSource compo.
The entry's current codename is ProjectX and the corresponding thread is here.
I plan on using this opportunity to relalize a fullscale test of Scroll before publicly releasing it. Today I created the stub for a small sidescroller platformer.
All the assets have to come from the first part of the compo.
In order to release a nice looking and impressive game, I'm currently looking for someone willing to form a
partnership with me as a designer.
Of course, if you want to code you're welcome to do so but I currently lack ideas and that's my main worry.
If you know someone who would be interested by such a partnership, please let me know!
Comments
I'd love to help but I've been busy lately and I'm starting a new job next Monday so I'll probably spend my free time NOT programming
Good luck with your new job!
Here's just a little list of what I've discovered and my ideas:
When you have an object selected for placement (ie through mouse up/down) and then press any of the buttons the editor places the object behind that button. I know you can clear the selection first, but it's still a bit annoying.
Not having a player object in a map seems to crash the game.
Having to cycle through all the objects gets quite tedious. Some sort of object browser would be great. But I guess it's not on the priority list for the compo?
Are melee attacks implemented? The dragonprincess characters attacks doesn't seem to have any effect now.
I haven't looked at the source code that much, but it looks pretty straight forward. It seems like Scroll does a lot for you, which is nice. Also, you write very spacious code
How locked are Scroll into creating side scrollers? Would it be possible to create someting isometric? Like for an rpg or a rts?
Anyway, that's a few thoughts from me. I hope I don't sound too critical
Thanks for having taken time to test it, it's really appreciated!
Definitely, I thought I got rid of this issue but I must have reintroduced it somehow. Will fix it asap!
Erm, probably bad player handling in ProjectX, I'll look into that today!
Yeah, as cycling is annoying I tend to use a lot of copy/paste in the editor. I'm not sure how to organize the object browser yet, but it's definitely something I'll do later, not for the compo.
Nah you're right, I didn't finish the Dragon Princess, I need to finish this part. My focus was to have a common interface for PCs and NPCs and I was having more fun playing with the mushrooms. I'll get back to the Dragon Princess when I'm done with all the other core features. For now I'll probably just remove her from the editor set list. I wanted her for coop play, but I don't think I'll have time to do this before the end of the compo.
Ahah, yes, same coding style than with orx, with slightly less permissive test writing convention. :laugh:
Beside the parallax (differential) scrolling option, there's nothing aimed toward side scrollers in Scroll. And this option is actually part of orx, not of Scroll itself.
Scroll's purposes are three-fold:
Actually, the small test I wrote for Scroll is a top down action game, not a side scroller at all. However, for 3D iso, you might want to add a new way of snapping on grid, having an iso grid instead of the standard ortho one. And that's not very hard to do.
Not at all! Thanks a lot for this feedback, it's very helpful!
Also I put the 0.7 online containing a title screen (ok I admit I liked playing with it shader but it probably won't stay like this ^^) and music/sound integration (first pass). Any new comments/thoughs are more than welcomed!
Happy to see you around!
You were a bit too fast for the v0.8, I was packing it, I didn't think someone would have tried to download today it that's why I updated my post on tigsource before uploading.
The v0.8 contains the first mini-level.
Also, in the first levels you can only shoot (and you need to learn enemies' patterns) but in the late ones you'll have a special weapon: either the time weapon or the gravity one, depending on the one you chose mid-game.
There's still a bit over a week left if you want to help me with ProjectX, I've been post-poning the level design as long as I could as I'm terrified by it! ^^
Thanks again for having tried ProjectX and posted about it here!
First, I like the idea of mini-levels. I don't think they need to be very complex or large. Right now you can see almost every enemy at once and try to figure out how to proceed to kill them all, which is fine.
However, I think the game has a bit too much of a "static" feel to it. When you hit an enemy, there's no reaction except for the health bar that decreases. This isn't necessarily bad, but here it lead to kills that feel like tedious tasks. The best example is the mushroom enemy that is standing on a 1 tile-wide platform and you have to double-jump then shoot him once, again and again and again.
Another thing I've noticed is that crouching isn't very effective, since enemies shoot at you endlessly when they see you and you don't have time to shoot them without taking damage.
I'd suggest...
- For enemies in this kind of situation where killing them is going to be repetitive, just give them 1 or 2 hp.
- Even better, have ennemies kicked back when they're hit (probably wouldn't be great for all of them of course) and make them explode when they hit the ground after falling from their home platform.
- Exploding enemies should hit other enemies >=D. General friendly fire would be interesting too. I think I've read that you were planning that.
- I think enemies shouldn't see you on both sides. Instead, have them flipping side regularly and/or there should be a delay before the enemy flips to shoot at you when you're behind him.
- Enemies should need to reload after a certain amount of bullets. This was the case in 0.7 but apparently now they all have infinite ammo.
- Speed up crouch/uncrouch
- The explosion when impacting on the ground should happen more easily and actually hit and push ennemies. It could be usable manually by pressing down while landing.
- Generaly speaking, don't be afraid to make the game "too easy" for the player. I personally tend prefer a game when you can go a bit crazy and there isn't just a single, careful way to handle things. If things are dynamic, the fun will come from watching them happen. Besides, you can always implement a score system based on time taken etc.
And that's about it. I hope some of these points helps. More ideas coming when I have them. I think I'll try fooling around with the level editor/ini files later and see what I can cook!
Excellent, thanks for having taken the time to analyze it!
Good, I came with that as mini-levels are the kind of level design which is the less out of my grasp.
I totally agree for the static-ness. Actually, now the non-patrolling NPCs will turn around when hit, but I could also do that for patrolling ones + a pause after reorienting.
As for the guy hiding, he's meant to be taken out with the special weapon.
either go on the left platform, activate the time weapon a shoot a lot of bullets, then come close to him so he stands up and all your bullets will hit him. Or with the gravity weapon: use it so as to remove it from its platform. I'll also add death for NPCs falling from too high.
You're totally right about this. I was planning on having NPCs think you're dead if you stay down for a second or two.
That's a good idea, I'll lower their HP.
I'll think about the knock back but for the fall, if it's a big enough, it'll damage them.
Hehe, why not. I'm not sure for the friendly fire yet as it might make the level design more tricky and I already suck at it.
I already did something about this. Some NPCs won't look back behind and some will only do it if you're not hidden behind something and within the vision range.
I didn't think about the reload. I'll see what I can do in the time I have left. Good idea!
You're totally right, I'll do this right away.
Actually the explosion was only there as there are no dust-like FX in the assets. I'm not sure if I'll keep it or not.
I totally understand this. I'd like to have the first half very easy and getting more and more difficult for the hardcore players. Not difficult for reflexes but pushing them to think of alternative ways of killing the NPCs, like using the special weapons in a good way.
Thanks again for your help!
I also did this changes:
- Lowered all NPCs' health
- Crouching is 4X faster
- When patrolling, NPC will reorient when hit. They'll then pause before starting to patrol again or before shooting (shorter pause)
- Some NPCs will think you're dead if you're crouching
- NPCs fire rate has been lowered
Let me know what you think of these changes.
My main issue was that the "Press F1" wasn't visible on my Macbook's 13.1 inch screen. I had to move it over to my external monitor to be able to determine what I should press.
Overall, I think it's coming along nicely. I'm pretty awful when it comes to these games, so I keep dying when fighting that first red mushroom that shoots rockets (I think those are rockets). The logo screen does lag a bit for me and consume quite a lot of memory, slowing down my other processes; however, after that, my computer has no problem running the game and something else. I am using a Macbook from two years ago (well, almost... I got it two or three months from now, two years ago); so, that might mean the graphics card isn't quite up to par.
Good to know! Weirdly enough I'm compiling it with the 10.4 SDK here. What error do you get?
I moved it a bit higher, but the screen resolution can be changed in the UserConfig.ini file when 1024x768 isn't a good fit. The sprites will be scaled accordingly and it might not look as nice as with the 1:1 ratio.
Thanks for trying and for your appreciation!
As for the logo screen, the brute force shadow shader (!) I came with is pretty inefficient. I tried to optimize it today and obtained a something 2-3 time faster code but still not satisfactory enough. As I'm a beginner with shaders, I'll have to get some doc about them in order to come with something better.
You can try the new version from the new archive if you want.
Erm, for 3D you won't be able to do it with orx in its current state, you know?
As for Mushroom Stew/ProjectX, the source code is included inside (along with Scroll, a layer on top of orx for C++ level-oriented games).
There isn't much code in the project and learning from it should be pretty easy.
Yup, that's better : ) And I like your new level 2 (the one in the desert). Its simple and it just works well.
As for my idea of knocking back enemies this morning well uh... I don't think it's super relevant anymore. Except for big impacts maybe.
And I see now, the solitary mushroom on the pillar makes much more sense with special weapons.
I have tried to make some maps with scrollEd. I had no trouble figuring out how to proceed with this, thanks to the key bindings in the .ini. My little brother also had fun challenging me to his impossible levels xD (though some were playable and quite fun). A few good ideas came out, like a forest section that would hide enemies inside it (I don't recommend flipped over enemies, though ...). But I was pretty tired today and as such, I didn't made anything very solid. I want to try again later, but I'll also be back to work soon and it should be pretty intense this month and blah blah blah. At any rate, I think you're on a good way with your own levels yet. I think projectX could work well as a short, speed-runable game and for the score you could simply calculate the time taken minus damage taken * some multiplier maybe.
And I have some minor things to report:
- The boss mushroom acts pretty weird. Sometimes I can just stand in his face without him shooting me for a random period of time (often long enough to kill him). And then without warning he shoots me again. If that's supposed to create an effect of suspense, then it works =P
-When bumping in a wall in mid air, you can double-jump forever... I guess the collision is interpreted as if you hit the ground.
-Sometimes, sound effects are played a bit too late. for example, the mushroom makes its dying sound half a second after it's shot to death. I had noticed this when working on dragoncube actually. Just mentionning it while I've got it on my mind.
Wow, 482 warnings?? Damn, I presume I'll have to switch to GCC 4.2 to see what's happening!
So far I have 2 warnings when compiling scroll. They're due to the use of the offsetof macro and I need to look more into it to find a way to remove or silent them.
Can you send me the output with all your warnings so that I can try to clean a bit this mess?
Thanks for testing!
Great, I'll try to come with 2/3 levels a day if I'm able to, and then it'll give me a day to add score + end game display and all the polish in the levels (trees, houses, ...). Will be tight as the deadline is in a week.
Good idea, if I get enough time I'll try to see what I can do with that.
I'll try to introduce advanced mushrooms slowly along the levels. I just needed a test level with all the bad guys to see if the code was working. I might not even use this level at all in this state.
Oh, excellent! I like to see that you could both take on the editor easily. It's far from being perfect but it's useable for basic needs, I think. If you want to send me both your levels and your little brothers one, I'd be more than happy to include them in your names! Even impossible levels can be good for challenges when a player has finished the basic game and wants more.
There are a couple of new NPCs I haven't added to the editor list yest, basically with the use of homing missiles.
That's exactly my intent. I'd also like to have a bonus multiplier for people not being hurt at all. I wanted to add an online leaderboard, but I don't think I'll have time before the deadline. Maybe for after. Same for the coop mode. You'll find what I want to add in the TODO.txt. Any idea is welcomed!
Ahah, I must have broken something lately. I wasn't aware of that, I'll look into it.
Argl, I'll try to fix that asap. For ground detection, I send 2 vertical raycasts around the feet, it shouldn't have detected vertical walls. I'll see what is going wrong, thanks for the report!
Yeah, actually it happens when sounds are not asked to stay in cache as orx needs to reload them from the disk. But here it's not the case, just a bad design: the sound was the one of the icon disappearing not the one of the NPC's death itself. ^^ I need to add a sound on the death/explosion of the NPC.
Thanks again for reporting all this, it's very useful and encouraging!
Can you give me some reproduction steps or a level to try, as I couldn't reproduce it on my machine? :S
The maps are made with the embedded level editor. Just use ProjectXEd.bat or on command line: ProjectX.exe -editor
Hmmm, well it happens whenever I :
1-collide with a wall on my right or left (seems to be any type of block) so that I'm as a close as possible to this wall. At this point I don't need to hold left or right for the bug to happen.
2-jump along that wall (or not if I hit it in mid-air)
3-press jump again and double jump, repeat and double jump again and again =/
Tried again for a couple of time without any success... Then I understood why!
Try to do it on a map I did, I think you won't be able to reproduce it. The reason is very simple: you're probably using a lot of small 1x1 blocks to make the walls where as I use only one that I stretch (using the scale tool + T for activating the tiling mode on it) to cover the whole surface. So in the end I get only on collision box for the whole wall whereas you get one collision box for every 1x1 block.
That being said it's still annoying and I'll try to find a way to fix this.
Thanks for the repro!
[EDIT] It's been fixed!
I also made a couple of adjustments based on your feedbacks.
I added 2 new types of mushrooms (orange, equipped with homing missile launcher and purple ones, mini bosses with lightning ball gun) and swapped the yellow and greens. Now their difficulty is based on color progression: green -> yellow -> orange -> purple -> red
I'll post all this later tonight with hopefully one or two additional levels.
I get it now... I had not used the tiling mode indeed. Cool option, and it makes it less painful to move a section of terrain somewhere else than doing it tile by tile.
I can't wait to see these homing missiles hehe.
"Split screen" multiplayer from the TODO list sounds very good too, especially since it should be quite easy to do with orx viewports system
I just uploaded 3 maps. The first one (Blarg_1.map) is made by me today, while the 2 others (Luco_1 and Luco_2) were made by my little brother yesterday while we were playing around. I fixed some tile problems in these 2 maps but didn't change anything else to preserve their weirdness =P.
Feel free to use them, or not!
orx-project.org/users/blarg/ProjectX_maps_3jan2010.zip
*note: the param of these levels in ProjectX.ini are copied straight from those of SunRiseMap.
So you'll need to add after the [SunRiseMap] section
Also (Iarwain knows this but it's not really obvious for others), in order to see the levels you need to add them to MapList, in the [Game] section of ProjectX.ini
Exactly. That and copy/paste are your friends till I add multiple selection!
That's definitely something I've been wanting to do for a looong time now! :P I wanted also a splitscreen separation a la ToeJam & Earl, with the nice camera move when splitting.
Excellent! I love them! I wasn't expecting the icy forest at all and the mushroom on its head surprised me as much as the "mushroom rain" I experienced in your level!
I will definitely use them, they really are neat!
Great. I also added a UserConfig.ini, so feel free to just add an include line such as @../data/map/Blarg&Luco.ini@ and distribute your own ini file along the maps, making it easier to play them. I'll try to come with a system so that you won't need to overload MapList manually. I need to think about it.
Again, great job to both of you, it really made my day!
Tomorrow I'll try to focus on level design as I failed today, but doing the scoring system looks so much appealing to me right now. ^^
But... it seems I can't use the new enemies (homing missile and mini-boss). If I place one of them, it won't move at all and the game crashes (windows has encountered an unexpected error bla bla bla) when I shoot it =/
The archive has been updated with the correct .ini, everything should be fine now.
Nice missiles. But to create more variety within the different weapons, I think you should either have them fired upwards, or slow them down. It would then give the player different dodge manoeuvers to think about than the classic "jump or crouch" pattern. I hope that makes sense.
I also merged the 2 special weapons so the user can switch from one to another as much as he wants. However their refill rate is now very low. I'll put a new archive online later today as I want to create at least 2 simple levels beforehand.
I'll also try to add the gauge for the special weapons.