Jump to content


Photo

Actor creation system


  • Please log in to reply
108 replies to this topic

#1 Tsukihime

Tsukihime

    Advanced Member

  • Member
  • 7120 posts
  • LocationToronto
  • RM Skill - Coder

Awards Bar:

Users Awards

Posted 21 May 2012 - 01:01 AM

Actor creation system
Author: Tsukihime

Posted Image

Overview

This script provides basic functionality for creating new actors during the game.

Features
  • Add or update an existing actor
  • Create completely new actors
  • Choose your own actor face, character sprite, and class
  • Choose how to distribute bonus stats
  • Choose a name for your new actor
  • Easily customize your face/classes/character sprite choices
  • Lock or unlock classes from being selected
Usage

Actor creation is accessed via script call

SceneManager.call(Scene_ActorCreate)

If you want to modify an existing actor, you must prepare the scene with an extra call

SceneManager.scene.prepare(actor_id, class_fixed?, face_fixed?, char_fixed?)

The actor ID must be one of the actors that are currently in the game.
The rest of the arguments are for locking fields from editing.

So for example if you want to prevent the user from changing class, face, and character sprite, you would say

SceneManager.scene.prepare(actor_id, true, true, true)

You can lock or unlock classes with the following script calls

$game_system.lock_class(n)
$game_system.unlock_class(n)

Where n is the class ID.

In the actor information screen, you can specify details about your new actor, distribute bonus stats, and choose a name.

At the top of the script there is some configuration. In particular, if you want to add more faces and character sprites, you just have to add the filenames to the lists. Note that I'm assuming you're using Ace's 4x2 sprite sheets.

You can also specify how much bonus stats actors start with.

Downloads

Script: http://db.tt/PcZ84zgR
Required: Custom Database

Notes

If anyone can draw a better scene that would be great.

I'm planning to add some more options like selecting some extra starting features for your new actor.

Edited by Tsukihime, 25 May 2012 - 04:23 PM.

All of my work can be found on my website:

banner200x40.png

You can follow me on any of these platforms:

logo_facebook40x40.pnglogo_twitter40x40.pnglogo_youtube40x40.pnglogo_patreon40x40.pnglogo_instagram40x40.png

Go here for Bugs and Requests.
 
Want to become a beta tester for my plugins before they are released to the public?

#2 whitedahlia

whitedahlia

    Advanced Member

  • Member
  • 142 posts
  • RM Skill - Jack of All Trades

Posted 21 May 2012 - 02:21 AM

This would be great for a Tactical RPG

#3 Novem

Novem

    Author

  • + Sponsor
  • 2679 posts
  • LocationTonawanda, New York
  • RM Skill - Writer

Posted 21 May 2012 - 05:03 AM

This is cool. It would be even better if you could somehow integrate the character generator.

Would be great for RPG's where player choice means everything.
Hey there. I'm Novem, author and a long time veteran of this community (previous known under names such as Nine or Obrusnine). 
 
If you're interested in my books, you can find them on amazon in the links in this spoiler.
 

 
Quotes:
Spoiler


uUftBOz.png

#4 Tuomo L

Tuomo L

    Advanced Member

  • + Sponsor
  • 584 posts
  • LocationFinland!
  • RM Skill - Designer

Awards Bar:

Users Awards

Posted 21 May 2012 - 06:19 AM

Can you make option disable parts of this? I don't want the player be able to change the face and sprite but the rest are awesome.

@/tuomo_l

 

Embark upon an unconventional quest to Save Your Mother!

 

small_capsule.png46158.png

 


#5 Tsukihime

Tsukihime

    Advanced Member

  • Member
  • 7120 posts
  • LocationToronto
  • RM Skill - Coder

Awards Bar:

Users Awards

Posted 21 May 2012 - 09:57 AM

I was thinking of making this a character generator where you can "lock" certain fields.
So like if you were recruiting a key character in the game, you would lock his face/sprite/class/name but allow customization for stat bonuses and stuff.
All of my work can be found on my website:

banner200x40.png

You can follow me on any of these platforms:

logo_facebook40x40.pnglogo_twitter40x40.pnglogo_youtube40x40.pnglogo_patreon40x40.pnglogo_instagram40x40.png

Go here for Bugs and Requests.
 
Want to become a beta tester for my plugins before they are released to the public?

#6 Reactive Owl

Reactive Owl

    ~Novice Scripter~

  • Member
  • 230 posts
  • Location.-|( In Studio )|-.
  • RM Skill - Musician

Posted 21 May 2012 - 10:41 AM

will it be compatible with XP sprites?

Edited by Reactive Owl, 21 May 2012 - 10:41 AM.

Posted Image
Spoiler

#7 Tsukihime

Tsukihime

    Advanced Member

  • Member
  • 7120 posts
  • LocationToronto
  • RM Skill - Coder

Awards Bar:

Users Awards

Posted 21 May 2012 - 10:47 AM

It should when I go and make the face/char drawing functions check the filename to determine whether you're using the Ace standard 8 sets per sheet or just 1 set per sheet.

But you can always re-arrange them into 8 chars per sheet.

Edited by Tsukihime, 21 May 2012 - 11:42 AM.

All of my work can be found on my website:

banner200x40.png

You can follow me on any of these platforms:

logo_facebook40x40.pnglogo_twitter40x40.pnglogo_youtube40x40.pnglogo_patreon40x40.pnglogo_instagram40x40.png

Go here for Bugs and Requests.
 
Want to become a beta tester for my plugins before they are released to the public?

#8 Novem

Novem

    Author

  • + Sponsor
  • 2679 posts
  • LocationTonawanda, New York
  • RM Skill - Writer

Posted 21 May 2012 - 12:46 PM

I just want that locked fields thing, can't have people changing the faces of my main characters, lol

This script has a lot of potential, it just needs some work. But when your done, it's going to be awesome, :)
Hey there. I'm Novem, author and a long time veteran of this community (previous known under names such as Nine or Obrusnine). 
 
If you're interested in my books, you can find them on amazon in the links in this spoiler.
 

 
Quotes:
Spoiler


uUftBOz.png

#9 Tsukihime

Tsukihime

    Advanced Member

  • Member
  • 7120 posts
  • LocationToronto
  • RM Skill - Coder

Awards Bar:

Users Awards

Posted 21 May 2012 - 02:33 PM

Script updated.

1. you can lock fields now and also specify which actor to update.

To lock a field, you must first "prepare" the scene.
You can pass in 0 for the actor_id if you want to lock fields for the new actor.

SceneManager.call(Scene_ActorCreate)
SceneManager.scene.prepare(actor_id, class fixed, face fixed, char fixed)

The actor creation window (now also an actor update window) will automatically update itself to the specified actor information. You can update your actor's information such as stat distribution if you have any bonus points. You can choose to change the class as well if you want.

By default, if you pass in an existing actor ID, all fields are locked.

Upon saving, all of the information will be written to your game actor.

If no actor ID is provided, then it will assume you're creating a new actor.

Posted Image

2. Stat distribution

This is a fairly simple stat distribution system that uses bonus points. It is not really meant for anything other than custom characters. Since the focus of this system wasn't really a stat distribution system I just used bonus points.

3. Class changing

This system also provides a built-in class changing feature so if you want to change your actor's class, you can do it here. If you don't want class changing then just lock the field.

Edited by Tsukihime, 21 May 2012 - 04:16 PM.

All of my work can be found on my website:

banner200x40.png

You can follow me on any of these platforms:

logo_facebook40x40.pnglogo_twitter40x40.pnglogo_youtube40x40.pnglogo_patreon40x40.pnglogo_instagram40x40.png

Go here for Bugs and Requests.
 
Want to become a beta tester for my plugins before they are released to the public?

#10 Novem

Novem

    Author

  • + Sponsor
  • 2679 posts
  • LocationTonawanda, New York
  • RM Skill - Writer

Posted 21 May 2012 - 02:56 PM

Sweetness! Is there a way to lock specific classes out from being selected?

There's a section of my game where the Main Character has to make that choice, so it would be great, :)

If not, could you add it? Would be amazing, :D
Hey there. I'm Novem, author and a long time veteran of this community (previous known under names such as Nine or Obrusnine). 
 
If you're interested in my books, you can find them on amazon in the links in this spoiler.
 

 
Quotes:
Spoiler


uUftBOz.png

#11 Tsukihime

Tsukihime

    Advanced Member

  • Member
  • 7120 posts
  • LocationToronto
  • RM Skill - Coder

Awards Bar:

Users Awards

Posted 21 May 2012 - 03:07 PM

Updated.

Just use the following script calls

$game_system.lock_class(n)
$game_system.unlock_class(n)

Where n is the class ID.

Note that this is a global class lock and not specific to actors. I haven't thought of a good way to set that up yet simply because if you're creating arbitrary characters in-game, you don't exactly have the liberty of note tagging objects that aren't accessible in data-manager.

Maybe I'll base it on classes rather than actors, so for example if you choose to be a Monk...then you can only change to classes that a Monk can change to.

Obviously note-tagging wasn't an issue for standard RPG maker scripts because all of the data you're working with is predictable and fully in your control, but with the introduction of custom data...we suddenly have a whole new set of issues to consider.

Edited by Tsukihime, 21 May 2012 - 03:10 PM.

All of my work can be found on my website:

banner200x40.png

You can follow me on any of these platforms:

logo_facebook40x40.pnglogo_twitter40x40.pnglogo_youtube40x40.pnglogo_patreon40x40.pnglogo_instagram40x40.png

Go here for Bugs and Requests.
 
Want to become a beta tester for my plugins before they are released to the public?

#12 Novem

Novem

    Author

  • + Sponsor
  • 2679 posts
  • LocationTonawanda, New York
  • RM Skill - Writer

Posted 21 May 2012 - 03:25 PM

That's alright, it's really the only instance I need to use your system (I'm keeping all of the other actors pre-set), so it doesn't matter if it's global.

Thanks Tsuki!

Edited by Niko Jose DelValle, 21 May 2012 - 03:26 PM.

Hey there. I'm Novem, author and a long time veteran of this community (previous known under names such as Nine or Obrusnine). 
 
If you're interested in my books, you can find them on amazon in the links in this spoiler.
 

 
Quotes:
Spoiler


uUftBOz.png

#13 Tuomo L

Tuomo L

    Advanced Member

  • + Sponsor
  • 584 posts
  • LocationFinland!
  • RM Skill - Designer

Awards Bar:

Users Awards

Posted 21 May 2012 - 09:50 PM

Is it possible this could set the player's stats to 1 and pool in the numbers of their stats to the bonus, so that they could use those points to build the stats?

@/tuomo_l

 

Embark upon an unconventional quest to Save Your Mother!

 

small_capsule.png46158.png

 


#14 Tsukihime

Tsukihime

    Advanced Member

  • Member
  • 7120 posts
  • LocationToronto
  • RM Skill - Coder

Awards Bar:

Users Awards

Posted 21 May 2012 - 09:56 PM

I can give you two modes to choose from: class defaults, or your defaults.

Class default means it follows the class levels.
Your default means you specify the base stats (regardless of level). Maybe higher levels have more bonuses.

Anyways, do you mean you want say, 100 bonus points by reducing all of the non-HP/MP stats to 1?
All of my work can be found on my website:

banner200x40.png

You can follow me on any of these platforms:

logo_facebook40x40.pnglogo_twitter40x40.pnglogo_youtube40x40.pnglogo_patreon40x40.pnglogo_instagram40x40.png

Go here for Bugs and Requests.
 
Want to become a beta tester for my plugins before they are released to the public?

#15 Tuomo L

Tuomo L

    Advanced Member

  • + Sponsor
  • 584 posts
  • LocationFinland!
  • RM Skill - Designer

Awards Bar:

Users Awards

Posted 21 May 2012 - 10:01 PM

Precisely. HP and MP would be locked and I'd use custom formula after this, however I was thinking more of reducing all the stats to 1 base and giving, the ammount to the pool how much you can use.


Say, you had attack of 50 and defense of 30, you'd get 80 points from that, plus the 20 from agi and so on.

@/tuomo_l

 

Embark upon an unconventional quest to Save Your Mother!

 

small_capsule.png46158.png

 


#16 Tsukihime

Tsukihime

    Advanced Member

  • Member
  • 7120 posts
  • LocationToronto
  • RM Skill - Coder

Awards Bar:

Users Awards

Posted 21 May 2012 - 11:21 PM

Hmm there might be a problem with reducing stats to 1.

Here's how stats are calculated:

(base stats + (param plus + <bonus from custom scripts>)) * stuff about rates

param plus is stats from features and stuff, and I've conveniently bundled my bonus stats on top of that.

The problem now is that "base stats" are generated from the class base stats for your level (that's what the stats curves are for).

I can rewrite the base stats to go back to 1, and then dump the class base stats into that bonus pool, but that's pretty much overwriting shared classes which may conflict with existing scripts that rely on the correct base stats.

And then what happens when you level? Should all of those stats be tossed in the stat pool? It can easily go up into thousands of bonus points, and allocating them is quite tedious in general since it's one point at a time.

I'd rather leave the level 1 stats as they are and then just dump all later stats into the bonus pool.

Edited by Tsukihime, 21 May 2012 - 11:58 PM.

All of my work can be found on my website:

banner200x40.png

You can follow me on any of these platforms:

logo_facebook40x40.pnglogo_twitter40x40.pnglogo_youtube40x40.pnglogo_patreon40x40.pnglogo_instagram40x40.png

Go here for Bugs and Requests.
 
Want to become a beta tester for my plugins before they are released to the public?

#17 Ravenith

Ravenith

    Abandoning projects since 2001

  • Member
  • 104 posts
  • LocationGreece
  • RM Skill - Designer

Posted 22 May 2012 - 12:17 PM

Good work, I'm definitely using this!

#18 SirCumferance

SirCumferance

    Advanced Member

  • Member
  • 325 posts
  • LocationLakewood, Washington
  • RM Skill - Jack of All Trades

Posted 24 May 2012 - 03:33 PM

Quick question. How would I go about removing a created actor from the party when talking to an event, THEN have that event look like said actor and save the actor info so if you decide you want that actor back, walk up to him/her and talk. Then the event reverts to another graphic. Is this easily done?

#19 Tsukihime

Tsukihime

    Advanced Member

  • Member
  • 7120 posts
  • LocationToronto
  • RM Skill - Coder

Awards Bar:

Users Awards

Posted 24 May 2012 - 03:44 PM

I would create a new event completely based on the actor you just removed and give it some event commands to talk to you and ask to join your party.

But that would be a different script.

Edited by Tsukihime, 24 May 2012 - 03:44 PM.

All of my work can be found on my website:

banner200x40.png

You can follow me on any of these platforms:

logo_facebook40x40.pnglogo_twitter40x40.pnglogo_youtube40x40.pnglogo_patreon40x40.pnglogo_instagram40x40.png

Go here for Bugs and Requests.
 
Want to become a beta tester for my plugins before they are released to the public?

#20 SirCumferance

SirCumferance

    Advanced Member

  • Member
  • 325 posts
  • LocationLakewood, Washington
  • RM Skill - Jack of All Trades

Posted 24 May 2012 - 04:02 PM

Well, I was hoping to have the game start at a Tavern and it starts as a story being told. You 'fill out' the heroes that are present, each in different parts of the tavern and as you play, you could talk to them to have them join. So, the guy by the fireplace the first time you play is a mage, but the next time you make him as a fighter (anyone by the fireplace starts with high resistance to Fire, so it kinda matters who is where).

Hmm, any ideas or do I need another script?

EDIT: Not sure I explained it right, lol. Anyone get what I am trying to do?

Edited by Juan Alvarado, 24 May 2012 - 04:04 PM.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users