New account registration is temporarily disabled.

[RMVX ACE] REPUTATION: HOW DO I CODE THAT?

Posts

Pages: 1
In a previous forum post, I asked a question about how to make quests more interesting, and a few people mentioned adding a reputation mechanic where in doing quests increases affinity with that NPC.

I like that idea, but the question is: how would you do that in a game?

This is a question of coding. I use the RPG Maker VX Ace engine, if that matters. Let's use the example of my first game "The Bamford Tenement" about a guy who moves into a strange tenement and does quests with other tenants. It was fairly simple in it's design, but let's see how we can make it more interesting with reputation.

Say Clouse (Protagonists) does quests for Dante (NPC). How would I write a script so that each time Clouse does a quest for Dante, it raises or lowers reputation with him based on the player's actions? As an edition, how would you create a mechanic where you could go to the pause menu, click on a tab for reputation, and see your standing with each character?

I'd like to do this without using plugins, because I fear that if I publish a game with plugins, I'd had to give royalties to the person who wrote the plugin. By the same margin, it may not hurt to show me a few plugins just so that I can read the code myself and maybe learn a thing or two when coding in the future.

Other than that, what do you guys think of reputation systems in general? Any games do them right? Any games don't do them so well? What are your thoughts?

All feedback is read and appreciated. Thank you.
Mirak
Stand back. Artist at work. I paint with enthusiasm if not with talent.
9300
Variables my good sir. It's all about variables here.

Say that the npc event has a set variable called "DanteREP" with a value of 5.

In the event for when you turn in a quest and you increase your rep, you increase that variable by 1, or decrease it by 1 if you let that npc down. In this case, if the variable reaches 0 you'll be at the worst rep level with that npc, or you'll be best buddies if you reach 10 or whatever number you want, this being done by using a conditional branch that makes you capable of changing the NPC's behavior based on his REP level, contained in the variable DanteREP.

That's just a bare-bonesy idea of how i would do it, but obviously you can play with it and make it way more detailed, or with a bigger threshold not limited to 5 levels for best or worst rep.

Personally i think rep systems can work to reward players for not being dicks or following a bit of necessary railroading from the GM in this case you. The Mount & Blade series rely a lot on this kind of system since lord relations can help you greatly when you want to rule the land.
author=DoctorRocket
I'd like to do this without using plugins, because I fear that if I publish a game with plugins, I'd had to give royalties to the person who wrote the plugin. By the same margin, it may not hurt to show me a few plugins just so that I can read the code myself and maybe learn a thing or two when coding in the future.

First of all, RM started using the term "plugin" in RMMV, so if you search/ask for that you'll likely get results in Javascript instead of RGSS3. Also, many scripts are free or have a one-time fee, so check the licensing terms if you find something useful.

But as Mirak says, this is pretty easy to do with global variables, in fact it's very similar to how you make a "Kill 10 Slimes" quest. You can also use this variable as a page condition (Conditions -> Variable ___ is ___ or above) so you can have Dante hug and kiss you every time you meet if DanteREP >= 10 or run away if it's 0 (Autonomous Movement -> Custom -> Move Route... -> Move away from Player).

Displaying them in the menu will be harder and probably needs a simple script.
@Mirak

Thanks! I hadn't considered using variables: that may really help. I'll see what I can do.
Pages: 1