Avatar

°•[Welcome_Eggs Benedict]•°

@welcomeeggsbenedict

||I make Art on occasion, not very good art, but still art||

Erm.....uhhhhh.... [throws my art at you and runs away]

P A.I.nter and Sebby!

Bill!

My Tenth anniversary art!!!!(I'm really Really proud of this one :])

Made for Miku day!!!

And then just some guy ( I tend to make these alot. They never have names or stories or anything like that. I just draw them and each one is unique. I mostly draw things like this traditionally and give them to people I like. There usuallybased on the person vibe since I usuallymake them whileI'mhanging out with them. This one wasn't for anyone. She just exists. )

If you want to suggest a name for her go ahead!!!

hey dog! sorry to bug you with a coding question, but i'm learning rpg maker mv for a fangame & i'm wondering how you did a couple things. if it's not too much trouble, could you quickly explain some of it? i've scrounged around as much as i can but i cant find what i need so i thought it'd be worth asking directly ^^;

  • how did you get the players name to show up in the message log? i know theres a plugin that adds the name windows for other characters & i've got that figured out, but i have no idea how to get the players name to show up in the history after selecting stuff
  • how'd you get the graphic for the route diverging choices to show & play During choices? so far ive figured out that looping the images recreates the visual but then the game doesn't progress, bc its just stuck in that loop...
  • how'd you disable ( + grey out) dialogue options after selecting them??
  • how'd you add the fullscreen option? i found a code that was supposed to add a fullscreen option to the optionscore settings but that one just breaks the plugin & i simply Don't know enough javascript to figure it out myself

i'm using all the same plugins that dialtown has so clearly these are possible without extra ones, i just don't know how to do it,, thanks for explaining your pronoun system a little while ago btw! i wasn't the one who asked but your post was super helpful when i was setting it up for myself :D

Avatar

It's been close to 6 years since I started making DT, and I had to figure out a few solutions to specific issues that cropped up which I've likely forgotten now, but I'll answer what I can remember. I'm also gonna give you some advice and advise you not to use RPG Maker for projects like these.

I basically Scott Cawthon'd DT and forced the engine to yield to my demands because I wanted to use the one I knew best. A few of these solutions are over-complicated because the easier ones (which would've worked in other engines) had to be constructed differently. I'll also mention a few solutions to problems you might not have encountered (but inevitably will if you try to recreate DT.) With that out of the way...

1)

You'll want these settings for the backlog plugin. the \c[x] commands refer to standard name colours. Log special inputs set to true, followed up by this below:

\n<\c[4]\n[1]\c[0]>%1

With \n[1] being the name you want and the number after the first c being what colour you want.

I'll also save you a potential future issue: I'd actually recommend you find the backlog plugin I used in DT's files (located inside the www/js/plugins folder) and use the version I have instead of the official release if you're not already, because I made a small change to fix an error. Basically, it breaks slightly with the plugin that lets you bring up the menu during dialogue because text reloads when you leave the menu and re-enter the text box, causing text to be logged at least twice after you pause it. If you keep bringing up the menu, you'll get constant duplication. I simply added a line of code that tells the log not to have two duplicates in a row. Not a programmer, but it seems works.

2)I did it in a funny way to ensure the engine wouldn't screw it up. Basically, there's 3 steps to the event and it's kinda hard to explain (and would be annoying to reproduce without a lot of trial and error for a beginner.) It's easier if I show my code. The first thing I do is run a common event (you can also just paste this code in and run it from the event) that renders the frames used by the popup, so they're loaded into memory + ready to go.

As you can see, they're set to 0 opacity but now ready to be used. Obviously they have to be on a layer that isn't being used by anything else in the scene (and won't be during this part of the game.) I run this event ahead of time, usually 4 messages before the choice comes up or so, so even slower PCs should have time to get them up.

The 'if head' thing just switches between the files for phone/typegingi's heads. I render each frame on separate layers and toggle their opacity from one to the next on a single frame to avoid flickering (bc RPG maker's renderer is hot trash and I have to work around it. Case in point.)

Step 2 is a second command event that orders the frames to fade in.

One layer is the text (which doesn't move) and the other is the first frame of the little head animation. A switch is also turned on at the end, and this signals the animation to go, which is handled by an event on any map where a choice like this comes up.

The event page that handles the animation itself has 2 pages, one to handle the animation as it goes and the other to handle when it stops (note that you could use one page and simply use a conditional branch. I didn't.)

Set to parallel so it runs in the bg behind normal events. As you can see, every 17 frames, I command one image to fade out over a single frame and another to fade in. It loops perfectly, cycling from middle frame, to left, to middle, to right, back to middle. Finally, when you select any route diverging choice, it sets off a second switch, which activates the second event page and commands the game to dispose of the graphics and then turn itself off.

Basically, it's the same animation but with a twist. The text is faded out over 60 frames and then the same animation is played as before, except the values it fades back into go from 255, to 170 to 85. Each of those commands is also followed by a 17 second fade to the opacity of the next frame. So, frame one renders in one frame at 255. Then seventeen frame fadeout to 170... Next frame renders for 1 frame AT 170, then fades out gradually to 85. Then next frame renders at 85 during 1 frame, fades to 0. This is how i synced the turning animation to fade out convincingly.

At the very end, I turn both of the switches this event page uses off so both event pages don't continue on loop. I also have a check for the first event variable to check if the game should still think the animation is running, as a failsafe. I don't remember if this mattered.

3)It's a function in the YEP Extended Message Pack. You'll see the commands for hiding (temporarily removing) + disabling choices (greying them out) as you scroll through the help list, almost 2/3 down. The thing you have to remember though is that messages that are commanded to be hidden/disabled will STAY disabled unless you turn them back on. So, ANY time there's a possibility to make a choice with a disabled or hidden message, add this plugin command to EVERY selectable choice

ClearChoiceSettings

This will ensure the game doesn't break from having a choice permadisabled. If you use loops or labels to make the game return to a previous choice, make sure the looping point is BEFORE any logic that may disable/hide a choice so it doesn't autoenable everything if the game has to go back.

4)Make a new RPG Maker project, copy the js folder from www/data/js and open the new project alongside your other one. Then check my YEP Option core plugin and follow this path in the plugin editor

This code should work.

On a similar note, I'd also take a look at how my plugins are ordered, if your list is different. I had to meddle with the list to make sure some plugins functioned correctly. This engine is held together with duct-tape and spite, so do what this advice what you will.

Hope this helps!

Avatar
You are using an unsupported browser and things might not work as intended. Please make sure you're using the latest version of Chrome, Firefox, Safari, or Edge.