Uncompress this in a recent Ren'Py (6.5.0 to be sure, really). The project directory is "rpgbattle". It contains :
- game : the usual Ren'Py directory
- rpgb : the python package used by the game.
You can use the rpgb package in any Python project as it's independant from Ren'Py. Keep in mind that no interface or even game flow is provided with that package.
The Ren'Py project provides an interface and uses rpgb to computer numbers and stuff.
As of now, the rpgb package lacks features but what is there should work properly. The Ren'Py interface is very much Alpha though, with a capital A ^^;... Everything doesn't even work in the example because I added a lot of skills I planned to have but rpgb/the interface can't deal with them yet.
Ok, what *works* : you can launch the game, use "attack" for both characters. For Nicholas :
Times Blades, Blood of Time (though not as intended), Ram, Taurus, Lion, Virgo, Scorpion, Sagittarius, Aquarius.... okay, I listed everything XD... I guess it was not that bad ô_o.
Actually uh... all skills work except that Blood of Time should do something very complex but only does damage, sometimes, and not to all the intended targets... As for Scorpion, the interface doesn't deal with "death by poison", so the enemy will remain on screen but *is* dead and won't attack anymore.
The goblin goes with default stats (rather weak). The orc was made stronger and will do harsh damage. The fire elemental is also a threat but was mainly added to test fire resistance (try using Fireball, Lion or Sagittarius on it). Sadly, Fire Shield doesn't help any against it because it doesn't really attack with a fire based weapon, sorry ^^;...
Haven't tested rollback or saving that much. Rollback very certainly fails. Saves might work.
Okay!!... Now for people who want to play around with it a bit or even use the core system in their games :
"I don't care for this interface but am interested in the rpgb package"
Just look at script.rpy, line 10 to know how to import the package and be ready to use it. Yep, that's it, one line
Sorry for the lack of comments in these, feel free to ask questions if you don't get it ^^;. The final product would definitely have a cool tutorial but there's no time for now.
"I don't know how to make interfaces, I want to use this Ren'Py one!"
You'll still need to look at the __init__.py examples to create your own characters, monsters, weapons, skills, etc...
To use them in the current wonky interface, look at script.rpy, line 62 to 75. That's where you should put your initialization code. Here's a quick example :
Code: Select all
h_mary = rpgb.Hero("Mary", basestats = {
'hp':50,
'mp':30,
'str':5,
'dex':10,
'agi':20,
'int':40,
'atk':0,
'pdef':0,
'mdef':0
},
picture = "cleric.png"
)
h_mary.skills = [rpgb.fb] # this gives Mary the skill "Fireball" which is created in __init__.py
# of the rpgb package
# note that the AI won't use any special skill, only "attack"
club = rpgb.EquipItem("Club", slotType="Weapon", modifiers={'atk': 5})
h_mary.equip(club)
heroes = rpgb.Team("Heroes")
heroes.addCopy(h_mary) # h_mary acts as a "base template" and can be reused
e_mary = h_mary.copy() # make a copy of mary to use as an enemy
e_mary.targetType = rpgb.ENEMY # since we created Mary as a hero, we need to change this for her enemy counterpart
enemies = rpgb.Team("Enemies")
enemies.addCopy(e_mary) # let's add a copy of the new e_mary template in the enemy team
# ... as an enemy this time :)



