RpgKit Problem

Announcements, support questions, and discussion for the Dialogue System.
terrymorgan
Posts: 97
Joined: Wed Sep 10, 2014 5:29 pm

Re: RpgKit Problem

Post by terrymorgan »

When the game loads, it says 'get an axe' if I've accepted the 'get an axe' quest, I can dismiss it by clicking on the
quest button and 'track', how do I get 'get an axe' to not load at game start?
User avatar
Tony Li
Posts: 20685
Joined: Thu Jul 18, 2013 1:27 pm

Re: RpgKit Problem

Post by Tony Li »

terrymorgan wrote:When the game loads, it says 'get an axe' if I've accepted the 'get an axe' quest, I can dismiss it by clicking on the
quest button and 'track', how do I get 'get an axe' to not load at game start?
This means that in your character's saved data the "Get an Axe" quest is active. During gameplay, you can abandon the quest by opening the quest journal and clicking the Abandon button for the quest. You may need to edit the dialogue database and tick the quest's Abandonable checkbox; I don't remember if I ticked that in the example or not. Or just finish the quest. :-)

If you want the quest to remain active but not shown in the tracker at game start, you'll need to set the quest's Track variable to false. Use the ICode "Lua" action to run this:

Code: Select all

Quest["Get_an_Axe"].Track = false
Quests have two variables related to tracking:
  • Trackable: If True, the quest is allowed to be shown in the tracker. The Trackable checkbox in the Dialogue Editor sets this.
  • Track: If True, show the quest in the tracker. The Track On Start checkbox in the Dialogue Editor sets this.
terrymorgan
Posts: 97
Joined: Wed Sep 10, 2014 5:29 pm

Re: RpgKit Problem

Post by terrymorgan »

'Saving & Loading

The Dialogue System currently saves its data to PlayerPrefs in single-player and multi-player modes. This includes all the standard Save System data, such as variable values and quest states.

It loads data:

When the character enters the game.

It saves data:

After every conversation involving the player.
When the "UpdateTracker" message is sent to the Dialogue Manager (typically when quest data changes).
If you use the ICode "Dialogue System/RPG/Save Data" action in one of your state machines.
'
I need this explained, there's an action in /DS/RPG/SaveData, but nothing for Load Data, I need to save and the game, is this possible?
User avatar
Tony Li
Posts: 20685
Joined: Thu Jul 18, 2013 1:27 pm

Re: RpgKit Problem

Post by Tony Li »

RPG Kit works more like World of Warcraft, or a Diablo instance. It's not the perfect fit for traditional single-player RPGs. You don't save a game. You save your character when you log out of the world. When you log back into the world, those saved stats are loaded.
terrymorgan
Posts: 97
Joined: Wed Sep 10, 2014 5:29 pm

Re: RpgKit Problem

Post by terrymorgan »

'You save your character when you log out of the world. When you log back into the world, those saved stats are loaded.'

So we're limited to 1 scene, any other scene is going to be a wrong location, and there's no 'load stats' gui. I'll see if Zerano can fix this, at least make my player spawn in Bogwood.
terrymorgan
Posts: 97
Joined: Wed Sep 10, 2014 5:29 pm

Re: RpgKit Problem

Post by terrymorgan »

I'll be damned, I set the loading scene/ spawnplayer /instantiate to bogwood5 wherever it said 'Main Level'
and now he's spawning in bogwood.
User avatar
Tony Li
Posts: 20685
Joined: Thu Jul 18, 2013 1:27 pm

Re: RpgKit Problem

Post by Tony Li »

Great!

In games like WoW, you can log out in any zone (scene). When you log back in, your character will be in that scene. It should be possible to do this with the Dialogue System and RPG Kit. I'll look into it as soon as time allows. Zerano may implement this in RPG Kit before I implement some kind of hacky workaround. That would be the cleanest place to put this functionality.
terrymorgan
Posts: 97
Joined: Wed Sep 10, 2014 5:29 pm

Re: RpgKit Problem

Post by terrymorgan »

That would be the cleanest place to put this functionality.

I definitely want to use Dialog system because I need the quests. There should be some way to save a snapshot of the PlayerPrefs at game start as wall as game quit, so if something went wrong you could reload the last good configuration.
User avatar
Tony Li
Posts: 20685
Joined: Thu Jul 18, 2013 1:27 pm

Re: RpgKit Problem

Post by Tony Li »

terrymorgan wrote:I definitely want to use Dialog system because I need the quests.
If Zerano adds the ability to save and load your character's scene and position RPG Kit, it'll still work fine with the Dialogue System. You'll still be able to use the Dialogue System for quests, conversations, etc. It's just cleaner if RPG Kit handles scene loading. Otherwise you'd have to write an unwieldy ICode state machine to pull the saved scene from the Dialogue System's save data and make RPG Kit load it. It's possible, but I'd like to see if Zerano can get it implemented more cleanly within RPG Kit first.
terrymorgan wrote:There should be some way to save a snapshot of the PlayerPrefs at game start as wall as game quit, so if something went wrong you could reload the last good configuration.
You could use ICode state machines. But it might be better to just have the ability to reset your character to a default starting position if it detects that something is wrong. I'd have to think over the best way to do this (design-wise) before suggesting an approach.
terrymorgan
Posts: 97
Joined: Wed Sep 10, 2014 5:29 pm

Re: RpgKit Problem

Post by terrymorgan »

I guess it is possible, I don't have the new RPG 3.13 yet, or my Unity 5.3 is bugged?

http://unitycoding.com/phpbb/viewtopic.php?f=5&t=240


Which Unity version do you have?
Which RPG Kit version do you have?

only possibility is that your Save Position-state machine is old and you are using Unity 5.3 so your save position doesnt use latest action to take account Unity Version and uses deprecated method.

Anyway check out your save position-state machine in RPG Player-prefab on runtime. Here is screenshots about it getting currentscene info correctly. When I load my character it loads up in correct scene.
Post Reply