-
lol, gone
-
Say I'm using this for an action RPG. If an enemy is killed outside of the default battle system, and on the map instead, will it appear in the beastiary?
-
Include a "Call script" command when the enemy "event" disappears. Write
$game_system.enable(ID)
where ID is the ID of the enemy in the database. This will add the enemy into the bestiary if he isn´t already there. Of course this means, you have to make enemies in your database be the same as on the map.
-
Thanks a lot man, I appreciate it.
-
I got a Syntax Error
??????"Bestiary Script'? 584????Syntax Error????????????
Please Correct it, thank you in advance ;D
-
You haven´t copied the code correctly, there is an "end" missing.
-
Thias script..its awsome..
There are so many poke-a-man games, this will be useful
-
When I use this and load the bestiary no text or anything is shown...whats up with that??
-
Search for the RMXP FAQ at this forum. There you will find an answer. And I should update the code and fix that... >.<
-
Marks a syntax error here
if not $game_system.beasts.include?(enemy.id))
-
Marks a syntax error here
if not $game_system.beasts.include?(enemy.id))
It should be
if not $game_system.beasts.include?(enemy.id)
-
I have too many penises in my mouth right now, it's hard to talk.
-
Oops... >.< I forgot to add that into the instructions. Use the "Call script" event command and type
$scene = Scene_Bestiary.new
-
Say I want to make it accesible from the game menu? I've almost got it, but whenever I open the menu it opens up the script automatically. I added another option (S7) for it. How do I make it so that !. It only activates when I slect option 7 and 2. when I hit "B" it returns to the menu instead of the map?
-
Double posting to get Blizzard's attention before he leaves for the day.
-
I wanted to reply yesterday, but I forgot. >.<
In the script, line 555:
$scene = Scene_Map.new
Change it to:
$scene = Scene_Menu.new(INDEX)
where INDEX is the choice on what the cursor should be placed when returning to the menu.
Open Scene_Menu and change
s1 = $data_system.words.item
s2 = $data_system.words.skill
s3 = $data_system.words.equip
s4 = "Status"
s5 = "Save"
s6 = "End Game"
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])
to
s1 = $data_system.words.item
s2 = $data_system.words.skill
s3 = $data_system.words.equip
s4 = "Status"
s5 = "Bestiary"
s6 = "Save"
s7 = "End Game"
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6, s7])
Now find this part further below in the same script:
when 4 # save
if $game_system.save_disabled
$game_system.se_play($data_system.buzzer_se)
return
end
$game_system.se_play($data_system.decision_se)
$scene = Scene_Save.new
when 5 # end game
$game_system.se_play($data_system.decision_se)
$scene = Scene_End.new
end
(I removed the comments.) Change it to:
when 4 # Bestiary
$game_system.se_play($data_system.decision_se)
$scene = Scene_Bestiary.new
when 5 # save
if $game_system.save_disabled
$game_system.se_play($data_system.buzzer_se)
return
end
$game_system.se_play($data_system.decision_se)
$scene = Scene_Save.new
when 6 # end game
$game_system.se_play($data_system.decision_se)
$scene = Scene_End.new
end
That works with anything, not just my Bestiary. You can add i.e. a Party Switcher that way or any other scene.
-
Thanks a lot man! That's a big, BIG help.
-
Awesome script, loved the fact you can view monsters' stats. I have a question though. How do you make the events and the Hero temporaily disappear? Whenever my besitary opens, all the events (Objects and NPCs) and my hero appear over the besitary window. It annoys me a little since the event might be possibly be blocking some of the text. I would like to know any way of making them disappear (As I said earlier). Thanks!
-
You can the window's opacity with ENTER/SPACE. Tell me if the problem is still there.
-
You can the window's opacity with ENTER/SPACE. Tell me if the problem is still there.
I tried your Opacity option on the besitary, and the events still block the text. I'll show you an example:
(https://rmrk.net/proxy.php?request=http%3A%2F%2Fimg105.imageshack.us%2Fimg105%2F3797%2Fquickierb6.png&hash=8b56618f574a46f4f35b7dad6cb7205a7bbee223)
As you can see, the NPC is blocking the name and the pawn is blocking the HP. Please tell me what to do from here.
-
Find these lines:
get_enemies
@bestiary_size_now = @enemies.size
refresh
put a self.z = 10000 under them, so it looks like this here:
get_enemies
@bestiary_size_now = @enemies.size
refresh
self.z = 10000
That should do it.
-
Thank you! It works now!!! ;D
-
Sorry guys but I am a complete noob. I copied and pasted the script before and main and...nothing happened. I also have the detect ability but the window just ends being blank. Please don't tell me to read the configuration cause i have no idea what to do. Please help me. :(
-
Sorry guys but I am a complete noob. I copied and pasted the script before and main and...nothing happened. I also have the detect ability but the window just ends being blank. Please don't tell me to read the configuration cause i have no idea what to do. Please help me. :(
Did you create an event (Whether common event or not) that has the Call Script command containing $scene = Scene_Bestiary.new
?
If you did not, that is why you cannot open it. Also, the way I corrected the blank words and stuff was when I got a CMS script (Blizzard's). I don't know how to correct it w/out using the CMS script.
-
No, i just took the script and stuck it right above main. What i am trying to say is that when battling, i don't know how to activate bestiary
-
Opening the bestiary in the battle scene and returning to it will automatically reset the battle and is therefore not recommened. Adding enemies into the bestiary is exectued automatically.
-
So there is no way of viewing the beasts after? Also, how to do i input information about the monsters?
-
Use a "Call script" command in an event. Type
$scene = Scene_Bestiary.new
to view the bestiary/all the monsters inside. Monsters are automatically added if you encounter them in a fight. The stats from the database (where you create enemies and such) are automatically used in the bestiary. You don't need to do anything, everything is automatic. You only need to use that event script call if you want to see it, that's all.
-
Can someone help me...I have been experimenting a lot with RMXP, and i followed the things said in this topic over the bestiary, but when I open my bestiary through a event, this will pop up:
NameError occurred while running script.
uninitialized constant Interprenter::INDEX
Can someone help me ??? ??? ???
PLEASE ??? :tpg: :'(
-
Find in all your scripts where it says "Interprenter" and change it to "Interpreter". This could have been caused by any script.
-
make a common event with the "open beastiary code"
make an item, and make that its common event.
make it not consumable.
-
*updates*
-
Neato script! Is there a way to have the item drops start off displaying as "?? ??", and then display the item only AFTER the enemy drops it (i.e. in Castlevanias)?
-
Yes, it's possible. You need to turn "all unknown". Then use a parallel process event. Check if that specific item is in the inventory and if it is, make it execute this call script commands:
$game_system.enable(ENEMY_ID)
Note that you need one item for each enemy. There will be as many conditional branches as you have enemies.
-
That's not quite what I meant. This is what I want to do (added code that needs fixing):
In Scene_Battle 2:
# Determine if treasure appears
if rand(100) < enemy.treasure_prob
if enemy.item_id > 0
treasures.push($data_items[enemy.item_id]) ## Enemy drops the item after battle
## Take enemy's drop item and draw over "??" already in Bestiary
# drop = $data_items[enemy.item_id].name
# _DROP = drop + " (" + enemy.treasure_prob.to_s + "%)"
# RPG.contents.draw_text(x_offset, 320, 256, 32, _DROP)
end
...
I know what to do, I just don't know all that ridiculous crap about accessors, scope, and references.
-
Can this work for abs?
-
Monsters are automatically added if you encounter them in a fight. The stats from the database (where you create enemies and such) are automatically used in the bestiary. You don't need to do anything, everything is automatic. You only need to use that event script call if you want to see it, that's all.
I bolded that part because I'm guessing that means that the monsters get added once you encounter them in a regular fight.
-
Exactly.
Turning on "ALL_UNKNOWN" will make them all ??? until "something else" happens. This "something else" can be defined with different methods. One would be using my Analyze script, another one would be the common event with the item. And yes, as soon as the enemy drops the item, the common event will add it into the bestiary fully.
-
how can i open the bestiary with a item?
-
@Blizzard(or other): I don't want all aspects to be "unknown". I want just the item to intitially say "Drops ? ? ? (10% chance)", and then when the enemy drops its item the first time (in Scene_Battle 2), I want to be able to change the "? ? ?" to "<Item Name>". Is there a way I can draw text into the Bestiary directly from Scene_Battle 2?
@Aster: Create a common event that calls a script: $scene = Scene_Bestiary.new
Then make an item that calls that common event.
-
[whoops, gone]
-
hey when i have the bestiary empty i press < or > and say error in line 232 a zero divison error
-
@ Blizzard:
THANK YOU!!! Just what I was looking for! :D
---------------------------------------------
@ Aster:
Replace the following code:
if Input.trigger?(Input::RIGHT)
$game_system.se_play($data_system.cursor_se)
@index_enemy = (@index_enemy + 1) % @bestiary_size_now
refresh
end
if Input.trigger?(Input::LEFT)
$game_system.se_play($data_system.cursor_se)
@index_enemy = (@index_enemy + @bestiary_size_now - 1) % @bestiary_size_now
refresh
end
with this code:
if Input.trigger?(Input::RIGHT)
$game_system.se_play($data_system.cursor_se)
## Added "if" to prevent divide by 0
if @bestiary_size_now > 0
@index_enemy = (@index_enemy + 1) % @bestiary_size_now
end
refresh
end
if Input.trigger?(Input::LEFT)
$game_system.se_play($data_system.cursor_se)
## Added "if" to prevent divide by 0
if @bestiary_size_now > 0
@index_enemy = (@index_enemy + @bestiary_size_now - 1) % @bestiary_size_now
end
refresh
end
-
One more question... How do you add the picture icon of the item next to the name in the Bestiary?
-
Ok, this is going to sound like an extreamely n00bish question. It doesn't show any words. I'm a PKE user. I tried using th font script, but it isn't working. What do I do?
-
Can someone copy and paste the original scene_menu, cuase i got pk, and the script u have is for the legal version becuase not all of the script is translated in pk.
So i screwed my menu over.
-
Say... Blizzard... is there a way to implant this into your CMS... it's just... i've been having trouble with it and wanted to see if you could help...
Thanks ;)
-
Tutorials Section, stickied topic "Blizzard's little tricks", look under 6. a).
-
I know how to do that... it's just... your menu system kinda works differently...
I've tried that but it doesn't work...
-
Anybody gunna answer my question?
~Irgna
-
Under
self.contents = Bitmap.new(width - 32, height - 32)
in class Window_Beast in def initialize add this below:
if $fontface != nil
self.contents.font.name = $fontface
self.contents.font.size = $fontsize
elsif $defaultfonttype != nil
self.contents.font.name = $defaultfonttype
self.contents.font.size = $defaultfontsize
end
-
Hey Blizzard, did you find a way to add the picture icon of the item next to the name in the Bestiary?