I am not proud of the code to share to tell you the truth. Too many things can be done in better and different ways. Releasing the source code I believe it is going to be a disservice to people who may want to learn from it.
kakoeimon
Creator of
Recent community posts
Thanks.
The talkie versions right now are out dated and contain several issues.
I have fixed all the issues but I am unable to upload the new versions because my internet connection is not stable and the upload always fails.
I believe I will be able to upload the new version for all the big platforms and android soon.
Hi.
The game is loosely based on the BFRPG.
There is no party.
It contains all 4 classes: Fighter, Cleric, Mage and Thief, but not races and genders.
All the tables like Level, AC etc are from the rules, except the Hide skill of the Thief which is always a success here.
The rules from the table-top are converted from 10' movement to one tile and those are the action points (AP) + 1 (for the attacks).
The weapon list can be found there too, but not all weapons used.
The main character is boosted as he can use all his AP to attack.
I also added unique potions around the dungeon to fill the gap with no party.
Each dungeon level is following the rules of the table-top to make a random dungeon. e.g. the 6th dungeon level is like a random dungeon for a 6 level party.
Several rules were not used, for example, there is no engagement, and everyone moves and attacks like they have charge skill.
There are also some more things added by me that are not in the rulebook.
For example, there are many potions scattered around the dungeon that do the job of all the classes. Like the Attack Potion that will boost your Attack Bonus, Heal potion, Poison potion, Paralysis potion, Power Potion etc.
There is also an extra rule for the potion where you can throw them to a monster and have the opposite effect. For example, if you throw successful the health potion on a Monster it will take damage, the Armor potion will lower his Armor Class (AC).
I want one day to sit down and write a manual (rule book) for this game, but I haven't done so till now.
For the time being, you can download the BFRPG rule book and do the conversion as explained earlier.
I am a solo dev without even testers (I am the main and only tester), so any feedback is very valuable to me.
Thanks for the interest, I wish to hear back from you.
Thanks man. It had been three months already?
I am going to resume the development of S.P.K. I just don't know when.
If you want to know what happened, read on.
The initial plan was to have 5 stages with 8 levels each, but stage 3 became quite hard and stage 4 (not released) became too hard.
So I started to think that I may do 4 stages instead of 5, but I stuck on the development of the 4th boss.
Meanwhile, the game have a bug that almost exists only when I develop it as I have some things printed on the screen, the problem is that I can't understand it. It is a very rare bug but freezes the game. It happened two or three times when I play it without all the printed stuff, more times when I print stuff and never when I run the game in debug mode.
As the bug never happens in debug mode, it made the process of finding it very difficult, and sadly I was unable to find it. Also, as I was changing things over the code, I made it even more rare.
Trying to find this bug consumed pretty much a whole month.
A very frustrating time to tell you the truth.
So I thought that I need a break from developing the game.
With all this, I started reworking on my Plato project to add voice over as some AI tools became more mature. But this proved to be more time and energy consuming from what I initially thought it will be. The project also raised some controversy because I use AI, as AI became the main topic for some reason, leaving aside the bigger picture.
Right now, I am just burned.
I am trying to find a way to push myself to finish my Plato project, but I know that this is wrong, I just need some rest. Keep in mind that I work on my projects 7\7 and all my free time. I haven't played a game for almost a year.
I am sorry for the lengthy response, I just felt the need to write all this stuff.
So to conclude, I will resume the development of S.P.K, but I do not know when.
I also would like to thank you for your interest once again. I usually get the silent treatment over my projects, and your positive comments means a lot.
Thanks.
Hi. Thank you for your comment and interest.
The game have 9 dungeon floors, 23 enemies including the final boss.
In the last floor, the game uses all of Mega Drive's RAM memory.
VDP (video memory) is fully used if you play as a mage, and in extreme cases some graphics may not be displayed. (By the way, I haven't encountered this, but I know that it is possible).
Also, enemy animations and wall animations will require a complete rewrite.
I never thought of the camera angle, but the way I made the textures it will require too much work just to test one different angle. The whole representation of the dungeon was made by analysing the way Eye of the Beholder is displayed in the Sega Cd version.
There are 7 music tracks, only two are repeated (the first one), I haven't though of track select option, to tell you the truth as I believed that music tracks and textures as something like the id of each floor.
The game uses the rules of the Basic Fantasy RPG : https://www.basicfantasy.org/
If you download their booklet then you have the stats of all the enemies, weapons and classes (I used only humans and the thief have no sneak and is name rogue) used in this game. You also have the logic of how the dungeon floors are populated, all the weapons.
The game got a little bit of reputation because the first version was made during a month for a game jam, I worked over the game for plus two more months and I added all the classes more classes, at first there was only the fighter. I added more items and implemented anything I was able from the rule book.
For some reason, everybody is waiting for this game to be finished or expanded to try it, when in fact there is very little space available to do so.
Aaa I almost forgot, the shitty game title font is my handwriting, well, you will have to get used to it, I am kidding of course.
Thanks again.
Thank you, once again.
I made the collision box of the kick a little bit bigger (4 pixels), hope this will make it more usable.
To tell you the truth a friend of mine who is playing the game he only uses kicks, I am doing the same when I play. He never mentioned anything, but I had seen a video online where the player had problems with it too.
I also can't understand the problem with jumping. Are we talking about platforms that are in the same height? If so, I usually use the kick to jump on them. This was something that I had seen and in videos from people who are playing the Bruce Lee game.
1. I am thinking about adding a little bit of story on this game, and probably it will be visible if let idle the main menu. I really dislike the story screens in MD version of the Snow Bros that pop up when you press start for the game. But I will probably add a story after all. A silly one for sure. By the way, the main characters are name Ren and Kyu....
2. You are right, the truck needs a little bit of work on this. On the energy bar, I am not sure. I will probably add something like smoke.
3. Enemies do not give score at all when they die. They give score when they become rollings and when they hit an enemy or a wall. People who want to make a high score have to finish the levels without losing any lives and by not staying without rollings. This will give them the big diamond at the end of the stage.
This is and the reason that enemies become red. When an enemy becomes red, a rolling enemy will turn him to rolling, otherwise he will just damage him. For this reason, it is better to just beat some of the enemies to become red and the power kick an enemy who is going to hit them.
Also, to get the big diamond you do not have to hit all the enemies with one power kick, but you must never remain without rolling enemies until you defeat all the enemies. Some later stages require this.
P.S. I love your photo. Looks like the whole place was setted up just for this game.
Thank you very much.
Thanks.
Probably something else happened, I think 2^16 of s16 table is (2^16) * 2 bytes.
But SGDK have us covered on this with the fix16Sqrt function.
The main headache when I tried it was that I was getting above the f16 limits with multiplication, that's why I have the division with F320. I also looked at the source of fix16Div and it looks like that div is forced in assembly. I haven't tried to remove the div with shifting, but if this is possible, vector normals can become too cheap.
That's some major math for sure.
By the way, this is what I came up with when I was making Abyssal Infants.
[code]
void fire_bullet_to_player(Enemy *e, s16 x, s16 y, fix16 speed) {
Player *p = get_closest_x_player(e);
fix16 vx = fix16Div(fix16Sub(p->obj.x, FIX16(x)), F320);
fix16 vy = fix16Div(fix16Sub(p->obj.y, FIX16(y)), F320);
fix16 length = fix16Add(fix16Mul(vx, vx), fix16Mul(vy,vy));
length = fix16Sqrt(length);
if (length != 0) {
vx = fix16Div(vx, length);
vy = fix16Div(vy, length);
vx = fix16Mul(vx, speed);
vy = fix16Mul(vy, speed);
add_enemy_bullet(x, y, vx, vy);
}
}
[/code]
F320 is just the FIX16(320) I use it so, the numbers do not pass the f16 limits, this probably can be replaced with F16 or bit shifting.
But I think what is really missing from your code is the use of fix16Sqrt that underneath is just indexing an array. Check it out.
The demo is out. Please inform me about your experience with the game.
https://kakoeimon.itch.io/super-power-kick
Thanks for the Support.
Thank you for the comment.
The "font" is like that because it is 8x8 pixels per letter, the game is made for the Mega Drive, so the actual resolution of the game is 320x224.
I really dislike the typewriter effect and never bothered to implement it on my vn engine.
There is no counter but the speed of a retro machine (Sega Mega Drive). What I mean is that the time between the background display and the display of the character (foreground) is that of the time it takes to put the tiles from the cartridge to the vram and then on screen.
I am probably forcing all my preferences on my VN engine, but in my mind VN are a way to tell a story and all the effects, like typewriter or image transitions, etc are relics of the past that nowadays do not add too much to the actual experience.
On the other hand, the engine uses an easy scripting language and "translating" the game to another engine more advanced with all the classic effects can be a matter of minutes.
I searched over the internet for word count and found this site.
https://plato.chs.harvard.edu/chartD
Based on this site, Plato's Protagoras is : 18,077 words
"Funny thing" is that the author of the site marks several works as theatrical.
Long answer again.
Rogue and in extent roguelikes, borrowed rules from the Original Dungeon n Dragons (ODnD). Reading those rules now days is a little bit difficult because the author wrote for the War Games players. But you can find many clones written in modern style.
Search for ODnD clones, many clones are completely free too.
So I believe that hunger was not a measure against slow walking, but something that exists for realism.
In extent, many mechanisms are dependent on hunger. For example, a very basic one, "Camp".
In roguelikes camping will regain you some of your hp. In DnD Clerics and Mages can use a fixed number of spells based on their level, and they can regain spells by camping. So hunger and food ratios play a more important role.
I personally never been fun of the Hunger - Starvation mechanics, so I just ignored it all together.
Movement in roguelikes is one tile per turn (unless you cast a haste spell, etc). You can move or attack.
In DnD you have movement in feet and one attack.
I used the DnD rules here from the Basic Fantasy RPG. I just converted 10' to 1 tile. I changed the movement in Action Points (AP) and gave the player character the ability to spend those APs even to attacks. Also, APs not used go to your Armor Class (AC).
I did that cause DnD is made to be played with 6 players and a Game Master, but it plays well with 4 players too (that's why almost all the DnD based dungeon crawlers are party based).
To balance this up, you can have attacks equal to a party of 4 if you do not wear very heavy armor.
The combination of more tiles per turn, unused APs going to your AC and equal vision range with monsters (this is something I added too), I believe that it is too strong.
For example, you move one tile, and then you end your turn. This translates to Shield Up and very careful moving. It is a must when you are about to enter or explore an unexplored room.
Not ending your turn, the moment a new enemy is revealed, is a must.
If you do not do that, you will not survive in this game.
Thanks for the comment and for playing.
I know that the controls are quite unique, but I believe it is for the better.
Long answer, but those were my thoughts when I was making the controls.
I tried to keep the depth of the menus as minimal as possible.
My priorities were that, interacting with the environment and accessing the inventory must be done with the less possible button presses.
So with that in mind, A became the interaction with the environment, B the Main Actions menu and C the Inventory.
Also, A is the confirm/select button in the Menus and B the cancel Button.
With those controls, there is no menu when you are searching for traps or secret doors (secret doors are not implemented yet).
You just press A and if there is no trap or items on the ground or an enemy in front of you or a door or a secret door, nothing will happen. No menu, no message etc.
This makes the gameplay much faster.
The Inventory cannot be accessed and from the Main Actions menu, cause this is the wrong (slow) way to pay.
For example, ending your turn is very important in this game, cause for example when you are approaching a new room or when your move may reveal new tiles of a room, the possibility of revealing a new enemy is very high. The best strategy is to walk slowly and have as much possible Action Points when a new enemy is revealed.
To walk slowly, you just do not spend all your AP (you end your turn). Move one block and then end your turn. So moving slow became UP -> B -> A.
Underneath the "End your Turn" are important actions that may exist or not exist in the menu. For example "Charge". If you can "Charge" then the option to Charge is there, if not the option is not. Putting this as a second option helps the eye to identify changes.
Last options to the Menus is the Special category of any character (Fighter does not have a special category). Cleric and Mage have Cast Spell, Thief will have his Sneak.
So the Special Category can be accessed very fast. B->UP->A and you are in the Spell List.
When you understand the controls, the gameplay becomes very fast, even for a turn based game.
Try playing the game by selecting to attack from the Action Menu and you will see how much faster it is right now, when you can just double tap the A button to do so.
I hope this clear things up, because I really believe that the controls are very good.
Edit: I changed the main game page. Hope this is more clear now.
Thanks.