• Add Review
  • Subscribe
  • Nominate
  • Submit Media
  • RSS

Miscellaneous

Release 2 of Garden

After receiving a review for this game, I decided to continue fixing and re-upload the game.

The upload is taking a while, so you may not see it for a few hours!

Release 2 shows the changes:
Immediate fixes:
No more missing resources (I hope!)
All skills except recovery skills are no longer usable in menu. (Sorry, I never actually checked the skill menu...)
Removed the blue door in Geihn Heralis. (Why was it there in the first place?! I was SURE i removed it >:O)


Enemy adjustments:
Reduced touch encounters (By approximately 40%)
All enemy HP has been reduced significantly.
Iscellent, Nivenreis and Geihn Heralis bosses are altered.
Iscellent now has minions that he summons.
Nivenreis will deplete your HP once in a while.
Geihn Heralis now has a periodic Drain ability that does not use up his turn.


Skill adjustments:
Burst has a rewritten description. Instant kill rate reduced significantly.
Shift is less Hp Bonus


Player adjustments:
Reduced amount of Exp needed to gain a level.
Loke's HP is reduced.


Navigation adjustments:
Nivenreis's entrance is now a Red gate instead of a Green gate. There is now a Red key in Iscellent, if you missed it in Traefinne.
The items in Scarecrow Shoppe now scales with level, and sells equipment.
More hidden items!


Files adjustments:
Fonts are included in the R2 download.
Removed template files and other garbage files.

Miscellaneous

Download~

Garden is complete. Yeah.

The download lets you play from start to finish, and even though it might be rough on the edges, and there's possibly some obscure error I haven't found.

Enjoy~

Miscellaneous

Artificial Intelligence

Garden is boring so I'll share some tricks~


RMVX's auto battle is most times silly and unreliable.

So I decided to try and fix that.
First, I need to make my own AI, but I'm not that much of a scripter to be able to code advanced stuff like that, so a workaround is in order.

I decided to make my partner's AI the same way I make enemy AI:


This not only allows me to control it's behavior to an extent, but it also allows the AI to be a little more wary of his/her own status instead of mindlessly using the highest damage skill over and over. His/her actions will change according to how much Hp/Mp he/she has, and whether a state is active, or what turn he/she is on, etcetera. Much more control than previous AI, much more flexibility, much more character.

Now for the more difficult part: Using an Enemy's behavior for an Actor.

This goes a bit into Scripting, so don't hurt me :<
Game_Actor has something called "def make_action" to determine it's action for Auto-Battle actors.
Game_Enemy also has that method! However, it's different than the one on Game_Actor.

What I first did was copy over the Enemy's method to Actor's method.

def make_action
@action.clear
return unless movable?
available_actions =
rating_max = 0
for action in enemy.actions
next unless conditions_met?(action)
if action.kind == 1
next unless skill_can_use?($data_skills)
end
available_actions.push(action)
rating_max = .max
end
ratings_total = 0
rating_zero = rating_max - 3
for action in available_actions
next if action.rating <= rating_zero
ratings_total += action.rating - rating_zero
end
return if ratings_total == 0
value = rand(ratings_total)
for action in available_actions
next if action.rating <= rating_zero
if value < action.rating - rating_zero
@action.kind = action.kind
@action.basic = action.basic
@action.skill_id = action.skill_id
@action.decide_random_target
return
else
value -= action.rating - rating_zero
end
end
end


But this brings up a problem: the definition tries to find "enemy".
Which is averted by adding:
enemy = $data_enemies[ENEMY_AI_ID]

after the line
def make_action

ENEMY_AI_ID being the ID of the Enemy you used to store AI in.

Now the method looks for "conditions_met?". This is much easier:
I copied the entire
def conditions_met?(action)

method from Game_Enemy and pasted it in Game_Actor.
It didn't seem to require any modification!

After that, assuming that everything has gone correctly, we now have smarter AI!

It's actually an effective workaround!
Pages: 1