#EVTUI (Visual event editing tool)

1 messages ยท Page 10 of 1

rocky kelp
#

ok main's script works fine

solemn zealot
#

(would've been great to have this when adjusting the camera for this event )

ocean acorn
#

oh right mona does that

solemn zealot
#

oh right does that

faint plinth
#

OK, pushed changes to the Windows bootstrap script to the branch.

solemn zealot
rocky kelp
#

i have no idea wtf is wrong here

solemn zealot
#

its the introduction to mona scene when he's in jail

faint plinth
rocky kelp
#

no i'm talking about my script

solemn zealot
#

oh lmao

rocky kelp
#

fuck me man

solemn zealot
#

rip

rocky kelp
#

i'll try running it on my main drive since it's talking about my mount point

faint plinth
#

Have you tried fully deleting your clone and re-cloning from scratch? ๐Ÿ˜…

rocky kelp
#

lmao now i't stalking about my mount point / bro what

ocean acorn
#

yeah checking out the right branch and running batch script fails with afaict the same errors i had before

faint plinth
#

Booooo....

amber moth
#

vs hates EVTUI...

ocean acorn
#

time to delete it a-fuckin-gain!!

solemn zealot
ocean acorn
rocky kelp
#

linux speak

#

uhh how do you clone a specific branch from terminal i'll try that this time

faint plinth
#

Clone, then git checkout psy/asset-management.

ocean acorn
solemn zealot
faint plinth
#

Oh, dope, that also works.

amber moth
rocky kelp
#

it works now

solemn zealot
#

yay my custom event is working

#

kinda

#

okay now that i deleted the duplicated camera its working properly (we can manage with the void as a wall)

rocky kelp
#

it works

solemn zealot
#

ugh why are images so huge on discord

#

queen shit

rocky kelp
#

oh they moving

amber moth
#

annbrine

ocean acorn
#

deleting a second goddamn time, actually changing to the right branch, and then running the script and building works

#

this isnt apparent from the screencap but marukis shirt is trying to escape from his coat

amber moth
#

lol

solemn zealot
amber moth
#

my favorite kind of water

rocky kelp
#

so it only shows initial positions?

amber moth
#

from the looks of it yeah

ocean acorn
#

it crashed with an out of memory error for some reason

#

or

#

wait no

rocky kelp
#

evtui sucks all your memory

solemn zealot
#

he's truly committed to reading it

ocean acorn
#

my brain is already gaslighting me on if thats the right error

#

naturally i cant seem to reproduce

rocky kelp
#

unreproducable errors..... angry2

solemn zealot
#

i cant reproduce naosmiley

rocky kelp
#

did someone take your ovaries

solemn zealot
#

idk let me check

ocean acorn
#

i went to check another discord and it froze my machine for a couple seconds then crashed again, only this time without the error popup

solemn zealot
#

every copy of evtui is personalized

rocky kelp
#

with how i'm the only one getting timeline problems... yeah

solemn zealot
#

man this is dark

#

uh... hello there. wait, why are her eyes normal here ๐Ÿค”

faint plinth
solemn zealot
#

thats some agressive lod

faint plinth
#

Yeah, GFDStudio seems to have some issues with scaling/distance in that way.

solemn zealot
#

yusuke this is ann's room (so camera can actually update when changing the initial values, but models need a restart of the scene)

faint plinth
#

I am glad all the issues just seem to be garden-variety jank and not related to the changes. So... full speed ahead!

solemn zealot
faint plinth
#

The environment can also have issues like that, tbh, it's just less noticeable because it's rarely as intricate mesh-wise.

amber moth
#

seems like changing model idle animations work without any restarts

faint plinth
#

Lol???

#

I don't know how ๐Ÿ˜…

solemn zealot
#

because they are already loaded?

faint plinth
#

I guess?? But I didn't think it was hooked up to the renderer that way. Cool, though.

amber moth
solemn zealot
faint plinth
amber moth
#

Interestingly enough I changed the first MSD for asset 5 into asset 3 and this happened. Which this anim happens later on in the event.

#

the same thing happened to sumi

jolly epoch
#

do I have to do a fresh clone for this to work?

ocean acorn
#

possibly

jolly epoch
#

nope I just had to delete the AST and GFD Studio folders and run the batch script again

#

so how does the renderer work @faint plinth?

#

I'm guessing there's not quite a way to advance the timeline yet

#

since you said it'd be pretty difficult

balmy basaltBOT
#

OK, if anyone wants to try out the branch psy/asset-management, it's up + unmerged. I still need to do some cleanup, but some basic Windows testing would be nice ๐Ÿ™

What to expect:

  • The bootstrap script needing to be re-run first!
  • Events may take a few moments longer to load than before (for obvious reasons)
  • The rendering tab will show some very basic blocking of the field and initial model positions + animations
  • Assuming you're on P5R, fields should show up with their textures (but my initial tests of the P5 beta suggest field textures aren't working there just yet)

What not to expect (yet):

  • Any responsiveness of the render to changes you make (without reloading, at least)
  • Palace fields to show up at all, lol (black void be upon ye)
  • Fields to look complete, because field objects aren't working yet
  • Crashes... ideally. But this hasn't run on Windows yet, so it'd be nice to confirm that ๐Ÿ˜…
Jump

[Go to message!](#1216244753239248976 message)

solemn zealot
jolly epoch
jolly epoch
#

btw I'm getting the temptation to try and make a 2d game engine

solemn zealot
#

well, closing an event can crash the whole thing but hey its when closing

#

uh i dont think you are supposed to kiss someone by melting into their heads... but hey, you do you!

#

this feature is great

solemn zealot
faint plinth
#

Energy of smashing your toys' faces together to make them kiss ๐Ÿ˜† but that's just how blocking out a scene goes, lmfao.

solemn zealot
#

Energy of smashing your toys' faces together to make them kiss

thats just making fanfics in general adachi_true

faint plinth
#

Well, true, but I meant the head melting part of it, lol.

faint plinth
#

I'm still going to have to get much more sophisticated with things to get full reactivity working here, but it's a nice accidental aspect of the feature, I guess!

amber moth
#

Yeah definitely, I mean even as it stands it's still leagues better than before.

ocean acorn
faint plinth
#

Since before was literally nothing, lol.

faint plinth
amber moth
faint plinth
#

The balding has hit him earlier than expected pensivekechi

amber moth
#

maruki respawned him incorrectly

solemn zealot
ocean acorn
weary pelican
faint plinth
#

It is merged femc ๐Ÿ”ฅ

#

(You should all be able to move back to the main branch, in other words.)

jolly epoch
#

or changed

faint plinth
#

It's more or less what was in the branch when I last recommended testing it. I just cleaned up some stuff, but nothing functionality-wise.

jolly epoch
#

๐Ÿ‘

#

I'll wait to switch until there's more features then

faint plinth
#

Ideal date: going to a jazz club and t-posing together ๐Ÿฅฐ

jolly epoch
rocky kelp
#

me and bro in the void

#

i'm testing a lot of different events

solemn zealot
#

wait theres a bike there????

rocky kelp
#

hawaii is scary without the background

faint plinth
#

Oh yeah, guess I need to load the skyboxes, too, lmao.... Not sure if those will straightforwardly come with loading field objects or not.

amber moth
#

They should, stuff like sun glare and skyboxes are just objects

faint plinth
#

Yeah, but I don't know if the fields have pointers to them on a node (as is the case with other objects), or if I need to add them in separately.

amber moth
#

They do

faint plinth
#

Oh? Nice.

amber moth
#

Yeah, like 90% sure they all just have skybox bones that spawn in said skybox

solemn zealot
#

shit's dark

faint plinth
#

(remembers that the darts event is coded really wildly) Oh, I bet this one will look funny as h--

rocky kelp
#

takemi??? hifumi???

#

DOUBLE MORGANA??

faint plinth
#

Yeah, Takemi, Kawakami, and Hifumi are the default models for some reason, and their models get replaced via script based on who you called. (I assume it's them both because then it's obvious if something went wrong for debugging, and also it's funny.)

#

Double Morgana is a mystery, lmfao.

#

Tag yourself, I'm Futaba's shoes lying abandoned on the floor.

rocky kelp
#

I'm Morgana 1

faint plinth
#

This one also takes like five minutes to load because of the way I did the GAP-doesn't-exist backoff logic... lmao... I guess I need to rethink that...

ocean acorn
#

im the dartsless dart wall

ocean acorn
ocean acorn
faint plinth
#

Huh. Anything in the logs after the crash?

ocean acorn
#

oh i forgor to check, i immediately got distracted labeling some confidant abilities for this imhex pattern

#

uhh im not sure if theres anything useful but there are some gfd warnings at the bottom

solemn zealot
solemn zealot
#

@faint plinth clicking on a msg_ in 132_001 (ryuji's awakening cutscene) crashes for some reason

#

also playing bgm and sfx from the snd_ can often just crash, but the same ones throught the Audio tab dont

solemn zealot
#

oh one last thing. any plans on supporting bgme framework? or at least allow manual input here (the new tracks should be able to be called in events right?)

faint plinth
solemn zealot
faint plinth
#

Events look at the regular BGM only.

solemn zealot
faint plinth
#

I see hmm

solemn zealot
#

should i naoping ryo?

faint plinth
#

Full support is going to take a bit of work, since it's not straightforwardly replacing cues in the same ACB. I'll put it in the same "TBD" category as Ryo audio support.

#

As for being able to select the cues anyway, listenability aside, hm....

solemn zealot
#

i manually edited (it shows 0 in evtui)

#

welp...

#

its the music at 50 secs

faint plinth
#

I can change the dropdown into a numeric entry until there's support for audio frameworks, to unblock here. I was just hesitating because I like the dropdown, lol. But the same is already the case for Scr_, I suppose, where I want a dropdown but have numeric entry in the meantime....

solemn zealot
#

i personally love entry + dropdown myself

#

good for customizability in case something doesnt get registered in the program while still having the easy to access list

faint plinth
#

Do you have an example of that?

#

Like, what does the dropdown show when you've entered a number that's not in it? Or are they not both showing at once?

solemn zealot
#

i dont know the proper terminology for ux elements. but from what i've seen when using some tools, is that the dropdown shows the normal list when nothing appears, and the predictive text kicks in when you input something. basically, the input box is the value and the dropdown sets that value, but you can also just input stuff there.
honestly, just detecting the added stuff to bgm42 for a bgme dependency should work. CBT also has some it adds using that

tbh just do what you think is better that wont derail the current scope

faint plinth
#

Hm, I don't know if Avalonia has anything like that out of the box. This comes to mind, but no dropdown shows up until you've entered something, as far as I can tell.

REFERENCE - Built-in Controls

#

That would be the ideal compromise, though.

solemn zealot
#

i dont think there is any other mod that adds bgm entries right?

#

might not be necessary then. just check for bgme

faint plinth
#

Ryo can. Regardless, that's more implementation work that isn't as trivial as a check at the moment, so it would take a while to unblock you that way. A UI-based unblock would be quickest.

solemn zealot
#

fair. you do have the audio tab to check for the numbers anyway so its not that much added friction

faint plinth
#

๐Ÿ™‚โ€โ†•๏ธ I'll change it to numeric entry until I figure something else out.

mellow gazelle
#

only difference is putting files in MOD_FOLDER/BGME/GAME_NAME will apply some preconfigured settings for music fuukanaotocooki

ocean acorn
solemn zealot
#

it indeed works with evts adachi_true

ocean acorn
#

for battles specifically i wouldnt even recommend using bgme framework over reactive (if it has an entry for the encounter you need) or battle themes (if youre just messing with trash mobs) barring a discrete reason

mellow gazelle
ocean acorn
#

yeah ik

mellow gazelle
#

since removing that would break all old mods BocchiAvoid

ocean acorn
#

i was already familiar with it back before the core cue-adding functionality was moved to ryo

mellow gazelle
solemn zealot
#

you cant trust me naosmiley

faint plinth
#

OK, pushed a fix for Snd_ to be able to use whatever cue IDs you enter numerically. (And also not crash if you try to play one not in the ACB.)

jolly epoch
#

is there a particular reason rotations are locked at 180 degrees either way?

#

like can the game interpret higher values than that or was it just a UI choice you decided to make?

faint plinth
#

All vanilla events + the beta event editor cap it between -180 and +180.

#

I suspect higher numbers would be fine, but they wouldn't do anything different than what you can already do.

jolly epoch
#

capping it at 180 actually does make some stuff a bit annoying

#

if you remove the cap on manual input then you could also make characters spin a bunch of times :)

jolly epoch
#

plus converting from blender to EVTUI was also a bit annoying in this regard since blender doesn't cap it at 180

#

I'd suggest either increasing the slider maximums or just making it so that manual input isn't capped

#

there's a lot of stuff that's like that I think, where there's strict maxes for the slider itself but not the manual input

faint plinth
#

Hmm, I'm not super inclined to change it from what vanilla does if it's not actually causing in-game issues, since both of those would be more or less solved when the rendering is complete.

#

But I do wonder... how does the game decide whether rotation is clockwise or counterclockwise?

solemn zealot
#

vibes (i have no idea)

faint plinth
#

Like, if you rotated from 170ยฐ to -170ยฐ, would it go all the way around, or pick the smaller angle?

jolly epoch
#

like whether it's a hard limit or not

faint plinth
#

I mean, I do think it would be worth checking what the game actually does there with the numbers capped as they are.

#

Since, again, this cap is consistent with vanilla EVTs.

#

And if there's something we really can't do without removing the cap, then it's worth changing.

#

Otherwise, my inclination would be to just add a way to convert higher numbers directly to within the range, within the editor.

faint plinth
#

But would it still be an issue with the renderer?

jolly epoch
#

I'm talking about this from a more user-input thing. it depends on how the game interprets EVT files

faint plinth
#

Removing the cap would also basically make the slider useless.

jolly epoch
#

not really

faint plinth
#

Sliders with huge ranges kind of just need to use numerical entry.

jolly epoch
#

that's why I suggested either increasing it to 360 both ways or removing the cap on manual input (as in what you type in the box)

faint plinth
#

i.e., have the editor do the calculation for you.

jolly epoch
#

fair

#

but I can think of one thing that you could do with this if the game can still interpret higher rotational values

faint plinth
#

The little spinny... lol.

jolly epoch
faint plinth
#

If we can figure out how the game decides whether to rotate clockwise or counter, you might be able to do that anyway, albeit with some steps.

rocky kelp
#

oh my god

#

you need to keep that

jolly epoch
#

in my mod?

rocky kelp
#

yes

jolly epoch
#

lol

solemn zealot
#

she's so happy

#

> is spinning

jolly epoch
#

well ig that the entire project is open source

#

I can probably just edit my local repo

#

and add the feature in for my own mod

#

fyi speed of the spin is determined by the duration

#

that unfortunately means she'll eventually stop spinning if you play this one for too long

#

I set it to 2500 frames

#

it doesn't affect the end of the scene btw

#

it still ends at the same point

#

but yes, the game can interpret angular values of above 180 degrees in either direction ๐Ÿ‘

#

I'll be honest

#

I'm kinda wondering if I could do some more reverse engineering to find the angle of the models as interpreted by the EXE

#

and if the character ID is stored somewhere close, I could legit just have one of the characters always spin

#

@solemn zealot if I were to make one character in the game literally always spin

#

who should it be

solemn zealot
#

yoshida

jolly epoch
#

he'd only spin during his confidant though

#

okay

#

what about Kawakami

#

or a party member

#

I think as long as the character ID is always consistent (and it should be, I mean they're stored at a close offset even in regards to SP/HP so model shouldn't be too different)

#

then I should be able to do it to literally any character in the game

#

but I'd like it to be one you see more often

faint plinth
# jolly epoch

Did you end up using EvtTool to enter a bigger number here? I'm wondering where the apparent frame skips in her rotation are coming from hmm

jolly epoch
#

since that one has max and mins

faint plinth
#

Oh, true, if you only look at her legs the spinning looks much smoother.

jolly epoch
#

yeah MRot doesn't impact head rotation

#

if I were to use the exe to make Sumi always spin though it might, idk though

jolly epoch
faint plinth
#

Okay, what if: the rotation entry stays the same, BUT there's an additional number entry for how many times the model spins around?

jolly epoch
#

sometimes it won't do all the spins

#

it's some mix of the duration and the angle

faint plinth
#

Possibly also the interpolation.

#

But I mean just in terms of "ways to effectively enter larger numbers that still maintains the smaller slider range for normal use cases."

jolly epoch
#

would it be tough to do that with the way you have it set up?

faint plinth
#

Decoupling them gets complicated fast.

#

Presumably you want the slider to indicate what you're seeing in the text box, but if you have a huge number there and then adjust the slider, would you expect it to jump back to the -180 to 180 range, or something else? Either way, nonintuitive.

#

And anyway, if you have a big number, is it not easier to know exactly where the rotation will end if the box shows the normalized degrees?

jolly epoch
faint plinth
#

But then what happens if you use the slider after setting a big number? It jumps back down? Seems kind of annoying -- more so than being able to use the slider while still getting a big number.

jolly epoch
#

because if the duration is too small it'll actually stop before the rotations finish

#

there's a max speed it can rotate at I think

jolly epoch
#

as I said though, you don't really have to do this at all

faint plinth
#

Is the speed not related to interpolation?

jolly epoch
#

if I find it more convenient I can literally just open your project in VS and edit it myself

jolly epoch
faint plinth
#

Interesting....

jolly epoch
jolly epoch
faint plinth
#

Well, my current thought is to have a checkbox to the effect of Enable Multiple Rotations? If it's checked, then there's an additional numeric entry for Number of Rotations and either way, if you type a larger number into the textbox, it normalizes it to the usual range (unlike now where I think it just sets it to max?).

#

So basically... you always know where the rotation is going to end. And the normal use case stays the same.

#

If it normalizes the range for you, not sure if there's much use in extending it to 360.

jolly epoch
#

could use some testing

#

but also idk if there's ever really a direct 360 degree rotation in any scenes beyond animations

#

so who knows how they handle it

jolly epoch
faint plinth
#

Seems like an actual animation would look better for most spinning use cases, true.

#

(Goofy ones aside.)

jolly epoch
#

yeah but if switching from 180 to -170 makes the character turn all the way around, it'd be more useful to increase the max

#

I can check real quick

#

which event to use though

#

I'll test it with the scene where Ann makes an excuse not to spend time with Kamoshida

#

since I want to edit that one anyway

#

it won't let me select this one

#

because the other one completely overlaps it

faint plinth
faint plinth
jolly epoch
solemn zealot
jolly epoch
#

it does it automatically

#

darn

#

maybe a better way to do quick arithmetic with it could work as a solution?

#

so like if you were to type in the box "180+30" it would set it to -150

#

but it's a small thing

solemn zealot
#

i hate windows

#

the order added seems to have click priority, which can lead to this

faint plinth
jolly epoch
#

it shortens the distance

faint plinth
#

Oooh.

#

Okay, so basically no point in going up to 360 if also normalizing automatically.

jolly epoch
#

well maybe

#

I still hold the position it might be easier for me specifically, but again

solemn zealot
#

counterpoint: 360 is a cool number. it reminds me of my xbox

jolly epoch
#

your project is open source so I can legit just do that on my end

#

I just decided to check the renderer for this particular scene lol

solemn zealot
#

shujin has only 1 floor now ig

jolly epoch
faint plinth
#

Bro???? Why.....

jolly epoch
#

are you loading all of the associated ones?

faint plinth
#

Usually just Palaces are.

#

So, no, not yet.

jolly epoch
#

not entirely true

#

I noticed this just when doing some of my changes

#

the complex fields are all like that

#

they don't have a .MAP file, but there are multiple fields

faint plinth
#

Do they all have associated map files, or just multiple sub IDs that need to load?

solemn zealot
#

i have noclipped in shujin before, and they dont have the floors you are not in loaded. is this related to that?

faint plinth
#

Probably related.

#

I see, I see....

#

That makes way more sense than the floor being a field object, lmfao.

#

I think it only loads the 0-indexed sub ID for field models at the moment.

jolly epoch
faint plinth
#

OMFG. Based.

solemn zealot
jolly epoch
#

just in case

solemn zealot
jolly epoch
#

so it does load it all, gotcha

solemn zealot
#

why this screenshot goes so hard

jolly epoch
#

I suggested freecam because sometimes optimization is determined by protagonist position rather than the camera

faint plinth
#

Welp, adding "load all fields matching the sub ID" to the unofficial list of things that need to be done to get fields working in the render.

jolly epoch
#

with the correct offsets

#

loading them all into blender makes them overlap

#

:/

#

in unintended ways

faint plinth
#

...hmmm, if there's not a MAP file, where are those offsets coming from?

jolly epoch
#

skeleton?

#

I think someone suggested something like that earlier

faint plinth
#

Hmmmmmm.

jolly epoch
#

because they share the major ID, but have different sub IDs

#

iirc

faint plinth
#

Sorry, yeah, I mean all fields with the major/minor ID and whatever sub ID.

jolly epoch
#

๐Ÿ‘

faint plinth
#

Well, I assume only if the provided sub ID is zero.

#

Probably a similar hardcoded logic there to how character outfits get loaded when sub ID is zero.

#

...if it's from the skeleton, IDK where in the bones it would be....

#

Like, similar to field objects, but different??

jolly epoch
#

maybe

#

I don't know much about how fields are loaded

#

but giving them all the same offset won't work, at least not for all of them

#

central street is the one I noticed that on

faint plinth
solemn zealot
#

on the latest one?

faint plinth
#

(Which is to say, I'm sort of hoping that I just forgor and that this isn't a cross-platform issue where my fix doesn't work on Windows dark)

#

A while ago, when I made the command duration responsive.

solemn zealot
#

i still have no idea why powershell is like this...

solemn zealot
jolly epoch
#

I switched back to the main branch and updated it

#

it still happens on my end

faint plinth
#

If you've noticed it at all since being able to visibly increase command duration, then it'll still keep happening, because nothing relevant has changed since then.

#

I guess I'll test and see if I can reproduce it....

jolly epoch
faint plinth
#

I am very afraid that it's a platform-specific issue because it always works for me, historically ๐Ÿ˜ญ

jolly epoch
#

uh

#

@faint plinth I'm seeing a lot of copy pasting amongst the different commands

#

I decided to go ahead and change it just for me, but imma just make a global on my end to make editing the rotation maximums easier

jolly epoch
#

like this section here is copy and pasted for every single event command that uses rotations

faint plinth
#

Yes...?

jolly epoch
#

feels like there'd be a better way to do it, but too late now

faint plinth
#

I do vaguely plan to make a rotation widget at some point to prevent that, but it wasn't as useful as having e.g. an animation widget, so I just didn't.

#

If I make the changes I suggested re: allowing users to specify a number of full rotations, it'd be part of widgetifying it.

#

I also hesitated to do it for rotations because I wasn't 100% sure if yaw/pitch/roll order was consistent across commands.

#

(I'm still not 100% sure, tbh.)

jolly epoch
#

I wasn't certain if C# was like Java in that it forced you to use OOP

#

it does and I hate it now

faint plinth
#

It's basically exactly like Java, tbh.

jolly epoch
#

I hate it

#

C++ ftw

#

no garbage collector no problem

#

but yeah

#

there's no reason I should absolutely have to store every variable within a class

faint plinth
#

I don't disagree naotoshrug

jolly epoch
#

anyway, I swapped out every rotation max and min with my global variable I made

#

I just set it to 360 for now

#

man

#

can't wait to have to do this again next update ๐Ÿฅฒ

faint plinth
#

Will it really not be enough if it can take your inputs and convert them automatically? ๐Ÿ˜…

jolly epoch
#

my head's killing me

#

I haven't even gotten that much done today

solemn zealot
#

138_001 (it crashes at the end)

#

okay... making a msg_ with the same message id and frame length didnt crash, so i went to the .json, copied the new message i did, and substituted the old one, and lo and behold, it loaded properly

#

there is a value that can crash then

#

this one doesnt crash for example

#

seems like this was copypasted from something else but msg_ doesnt use these values. and some wrong values just crash the editor

#

@faint plinth , the culprit is

{
    "Unknown1": 16256,
    "Unknown2": 0,
    "Unknown3": "NaN"
}
#

i imagine other messages that were crashing before are similar cases

#

but i cant remember which ones they were rn naodead

#

"NaN" in specific

#

must be the string being there... but is it a string before conversion too?

jolly epoch
faint plinth
# solemn zealot 138_001 (it crashes at the end)

Urgh, yeah, there are a few old events where the offsets around these entries under Msg_ are messed up. Hence why you get floats that end up as NaN (i.e., not a number).

I've dug into it to see if it's possible to read them cleanly but I really do think they're just ancient and broken, and the game ignores those parts of the commands. No combination of version and endianness cleans them up.

...but obviously this shouldn't crash the tool if it doesn't crash the game, so I'll see what I can do to prevent it.

#

(I suspect it's mostly a UI bug re: NaN, since I don't think crashes were happening before I tried to display the entries.)

solemn zealot
#

the queen asserts dominance

#

btw what's up with palace fields

faint plinth
#

Palace field GFS files are determined by MAP files rather than being referenced directly by the indices provided in the EVT, unlike with overworld fields. (For Palace fields, those indices point to the MAP files, instead.) So they're basically just not gonna work until I get to parsing those MAP files.

solemn zealot
jolly epoch
#

idk why they handle it this way

solemn zealot
#

atlus moment or is there a good reason?

jolly epoch
#

.MAP literally doesn't do anything except reference GFS files

#

there's no reason they couldn't do what they were already doing

faint plinth
#

No idea, tbh, especially since we've confirmed that fields being broken across subfield GFS files are a thing for overworld fields....

#

I'd say it's for more precise positioning, but that also seems to be a thing subfields are capable of.

#

Mystery!

solemn zealot
jolly epoch
solemn zealot
jolly epoch
amber moth
solemn zealot
#

no, thats a giant lady

amber moth
#

DDLC is almost 10 years old

solemn zealot
#

holy shit im old

amber moth
jolly epoch
#

the existing one works for most maps

#

but there's some weird endian nonsense with some of them that leads to it not working for all of them

solemn zealot
#

why cant the maps be consistent are they stupid

jolly epoch
#

so endian nonsense is a result of converting filetypes to work for newer hardware overtime

#

potentially

#

that's an assumption since there's a lot more little endian stuff here than in the ps3 version supposedly

#

why the heck can't visual studio find these projects

#

this is so annoying

faint plinth
#

(Once that code exists, to be clear, lol.)

faint plinth
#

Linux moment.

amber moth
#

I can test them if you want

jolly epoch
#

there's a lot about atlus filestructures I wouldn't have understood without those templates

#

how'd you figure it out?

faint plinth
#

I read the templates and recreate them in other ways adachi_true

#

So they also help me, but not because I actually use 010.

#

Also, sometimes I just reverse-engineer things myself or use other repos that parse things to help.

jolly epoch
#

coolio

faint plinth
#

...hmmmm, I think MAP files are actually necessary for subfield positioning. If I just switch the subfield for a Shujin event, the position loads just fine without me having to look inside the GFS for any special info. e.g.,

jolly epoch
#

so there's probably something we're missing

faint plinth
#

What I mean is -- we figured that overworld fields were using some other information for positioning, since the positioning wasn't working when you loaded them. But the positioning is loading here just fine.

#

i.e., if subfields do need additional positioning, a MAP file would be needed to do it. It just is not needed for overworld fields.

jolly epoch
#

keep in mind

#

it's only some that didn't work properly

#

when I was adding in the natsuki, all the objects loaded in as they should

#

for the shujin entrance field

faint plinth
#

Granted, I also don't know how MAP positioning works, given that X/Y/Z are... bytes??

jolly epoch
solemn zealot
#

btw a small thing: Switching from the Scripts tab and going back to it resets the scrolling, even though every other tab keeps the last scroll location. So a particularly long msg/flow can be quite of a pain to mess within the editor if you are constantly switching tabs. hopefully it shouldn't be too hard to store the scrolling in the scripts tab?

#

it does eventually get better tho

#

(been a thing for quite a while i just didnt report it)

faint plinth
solemn zealot
faint plinth
#

Some of this stuff is just the specific text editing widget I'm using, which has... both pros and cons, shall we say. So a bit hard to work around.

solemn zealot
#

yeah i imagined

faint plinth
#

Pros: syntax highlighting and line numbers out of the box!

Cons: The lag, even at its best ๐Ÿ˜”

solemn zealot
#

why does it lag is it stupid

faint plinth
#

Probably I'm not using it optimally, but it acts so differently from other Avalonia bits. Unforch.

solemn zealot
#

custom character models are working perfectly fine so far

faint plinth
#

Ann's Persona: Sara Bellum from the Powerpuff Girls...

solemn zealot
#

btw the amount of yuri that is about to transpire wouldnt be possible without you NaoPride

#

from rank 2 to 10, 1 romance rank, that makes 10 custom events at minimum

#

minimum

faint plinth
solemn zealot
#

clearly just as important

solemn zealot
#

the camera can get 'stuck' when changing values and nodes around. in the actual event this is not the actual angle for a good 300ish frames.
deleting further camera nodes and having it be fixed confirms my suspicions. it is taking later camera values as reference if you mess with the initial camera node

#

seems to be caused by cut and delete. and adding a new csd does not change the renderer. this persist across restarts btw

faint plinth
#

I think CG noticed something similar with model animations. Not super worth digging into vs. actually proceeding to make the renderer responsive + able to show specific frames, but weird.

solemn zealot
#

true it should fix itself then

faint plinth
#

I mean, hopefully ๐Ÿ˜…

solemn zealot
#

seems to be caused by it stubbornly deciding one node as the initial one even after adding one before it in the timeline, so anything that would have it check the nodes again according to the timeline should fix hopefully

faint plinth
#

I'm pretty sure it's looking at commands in the order they were added rather than in chronological order, so yeah, that makes sense. If you move commands around they'll end up later in the order... although that may be related to the bug with long-duration commands preventing subsequent commands from being clickable dark

#

IIRC my fix (that apparently isn't working on every machine for whatever reason) was to reorder the commands in memory but not to reorder them in the lower-level representation... but maybe that's making things more complicated in the long run.

solemn zealot
#

man, just the 'first frame' rendering was all i needed to push this one far femcdoot

#

getting an easy preview of camera angles is in fact quite useful

faint plinth
solemn zealot
#

frame-perfectly executed shihoann kiss

faint plinth
# solemn zealot

Yuri-tested, yuri-approved: my wife also says this looks really cool and that it's an interesting, meaty Annshiho dynamic ๐Ÿ˜„

solemn zealot
#

Lets gooo got the wife seal of approval

faint plinth
#

She kept trying to be like "ooh can I watch it after you" and then was baffled when I was still watching like seven minutes later, lmfaooo.

solemn zealot
weary pelican
solemn zealot
# faint plinth Goddamn, I fear what black magic you'll manage when the rendering is actually re...

what we already have is infinitely better than anything we had before. with the current renderer its feasible to get much more precise coordinates in a reasonable amount of time than before, but that does have quite a bit of friction even aside from that node order bug.
responsive rendering, however...

  • would allow me to get very precise camera positions and angles at any second
  • would make moving characters around the scene easier, and two characters physically ||naotoflushed || interacting with each other way easier
  • the first two points can still be done with a first-frame renderer tho. however, what would benefit a lot of responsive rendering is timing. right now, you can only vibes-guess how many frames you need, but with responsive rendering, you can get timing of things in a ridiculously precise level. this is huge for sound effects and character interactions for example
#

tl;dr: responsive rendering = more better yuri

faint plinth
#

Timing may still take some work even with basic responsiveness in place naothink Like, 30FPS logic is confirmed and all, but some of the finer points aren't totally clear, especially re: model movement and rotation and interpolation and such.

#

But I'm sure that sort of thing will be easier to pin down over time as we get other things to work correctly.

solemn zealot
#

evts are weird

#

welp. hopefully this won't be a pain to get working naodead

faint plinth
#

Everything's a pain, but I wouldn't be here if I didn't enjoy the challenge ๐Ÿ˜„

solemn zealot
faint plinth
faint plinth
#

Oh, I pushed some changes that should in theory fix the crashes on old borked Msg_s (and crashing upon opening command editors in general) -- as well as normalizing angles rather than clipping them.

#

Relatedly, why the hell does % mean remainder and not actual modulo in C# dark

jolly epoch
#

but it's not that odd tbh, I think more frames just means smoother animations since it has more room for interpolation

#

but most 3d games don't really animate models beyond 30 fps from what I've seen

#

maybe some do nowadays, but not with the stuff I've seen before

faint plinth
#

What I mean is -- the game is supposedly at 60fps on PC, but event logic still functions at 30fps. So I don't know how the frame counts translate. I'm assuming it's not a weird case where events alone are back in actual 30fps, lmao.

jolly epoch
#

the "framerate" is probably more like a tickrate in this case

#

so that it can match up with whatever framerate you actually play the game at

faint plinth
#

It certainly is. But the relation to the game's actual framerate is unclear.

jolly epoch
#

timelines can be controlled with graph logic in blender, it's probably the same for most 3d engines imo

faint plinth
#

Like, when Wisteria increased the EVT "framerate" by enough, the game broke.

jolly epoch
#

that's not very surprising lol

faint plinth
#

Which implies to me that we're still at least somewhat beholden to actual framerate, if indirectly.

jolly epoch
#

if the actual event timeline system is designed for 30 fps/tps, and they never differ from that, then it's likely that the math they used for it expects around 30 fps

#

or tps, I mean

#

it's just weird that they call it fps ig

#

since that wouldn't really be accurate

#

if it were, you'd expect 60 fps to make events play at double speed

#

it's also possible that they modified the engine's logic and it actually did used to use frame counts instead of tick counts

#

but had to update it for the remaster since it would be on hardware that could do 60 fps or more

#

so they locked the events at a 30 fps timeline and just included new logic to make sure it doesn't look weird at higher frame counts

#

I think it's pretty common for console exclusives, at least in the past, to base all their timings on frame counters since then they could easily just cap the framerate

#

and even some PC releases base some logic on frames rather than ticks

#

like Doom Eternal's meat hook acceleration is based on frames rather than ticks

#

as a result, playing the game on lower settings and then using the weapon wheel can result in you gaining a lot of speed using the meathook

faint plinth
#

Lmao, yeah. It'll just be interesting to piece together what the actual logic is for P5R, which I'm sure will be a fun and cursed combination of things no matter what.

jolly epoch
#

probably

#

it's probably not 100% precise either

#

considering they clearly didn't rewrite the way event timelines work, I imagine if you were to play the game on like 1000 fps somehow, that'd also cause some goofy results

#

game caps your framerate based on your display's refresh rate though so I doubt that'd be easy to test

#

even if you set it to 120, if your monitor is only 60hz it'll only go up to 60

#

I know this because I have a 60hz display lol

#

I really need to upgrade to like 144hz at some point

#

actually

#

it's cyber monday

#

let me check prices

rocky kelp
#

@faint plinth i'm getting the bmd's not saving issue again, and there's no stray .msg files in the directory at all :/

#

yes, i am compiling before i save

#

rip my progress...

faint plinth
#

Noooo ๐Ÿ˜ญ

#

Is it the CPK directory name?

rocky kelp
#

possibly

#

they are unique

faint plinth
#

That's it, then.

#

Custom CPK directory names do wack stuff combined with emu at the moment. (It's in the pinned post as a TODO.)

rocky kelp
#

no bmd emulator

#

i have it set to raw files

#

i was dependent on evtui because scriptgui stopped letting me drag files for some reason

#

just wine things

faint plinth
#

Or rename the CPK dir adachi_true

rocky kelp
#

but organization

faint plinth
#

(Temporarily, lol)

rocky kelp
#

don't mind me just trying to build script gui with your patched script tools...

faint plinth
#

I mean, if that works, all the better ๐Ÿ˜„

jolly epoch
#

once I get to a release phase for my mod, Imma change the directory names and move stuff around for the sake of my config

rocky kelp
#

damn it shrinefox io WHYY

faint plinth
#

I want to resolve the CPK dir jank so bad, but it's nontrivial and the rendering calls pensivekechi

jolly epoch
#

so even if you were to change the names of the folders it auto-creates, you'd still have to update every other instance where it looks for that directory?

#

to some variable that stores a custom directory name, anyway

faint plinth
#

The jank mostly just pertains to BF/BMD emu stuff.

rocky kelp
#

couldn't build gfd studio either, rip

jolly epoch
#

ah right

faint plinth
#

Things get weird with the empty files, basically.

jolly epoch
#

yeah I remember that

rocky kelp
#

again, not bmd emulator ๐Ÿฅฒ

jolly epoch
#

well putting the emulators aside

rocky kelp
#

oh wtf?

faint plinth
jolly epoch
#

would it be possible for you to add a feature that allows you to set custom CPK directory names? @faint plinth

rocky kelp
#

oh nvm

rocky kelp
jolly epoch
#

ideally per event

#

or maybe some group system

faint plinth
jolly epoch
#

granted QoL comes after functionality, so I wouldn't expect you to do it yet

#

also

faint plinth
jolly epoch
#

if my SDL experiment goes well

#

since you understand events better than anyone, I kinda do wanna try to make an in-game event editor

#

I might ask for your help with making it

rocky kelp
#

is there a way to see it logging what it's writing

jolly epoch
faint plinth
#

I don't think it logs that at the moment, but it definitely should.

#

Oh, wait, is it an original event?

rocky kelp
#

i remember you said that it wasn't writing because of the msg files in the directory alongside the bmd, but there is none i removed them

#

correct

faint plinth
#

That's also known not to work. In the pinned post, as well.

jolly epoch
#

@faint plinth, custom events work fine if you don't use the emulators

rocky kelp
#

well

jolly epoch
#

remember me creating the custom Hawaii event for Sumi? I had no trouble with that outside of using the emulators

#

which I ended up ditching and it was fine

faint plinth
#

BMD stuff gets weird if you've got a custom event and CPK directory, I think.

jolly epoch
#

fair

#

but all you really have to do is copy any BMD and put it in the right directory with the right name

#

and BF

faint plinth
#

It's all tangled, lol, idfk. In theory when I manage to fix it it'll all get fixed at once because it just needs an overhaul.

jolly epoch
#

then you can edit it just fine

#

that's what I did

#

I just copied over Hifumi's, deleted everything, and rewrote it

faint plinth
#

Idk why poor raven is cursed here, rip.

jolly epoch
#

seems to be an issue building GFD and AST?

#

idk

faint plinth
#

No, they're trying to do that separately because of the issues the tool has with not saving scripts as expected.

jolly epoch
#

ah

rocky kelp
#

yeah and my script gui is fucked

jolly epoch
#

yikes

rocky kelp
#

because wine

#

because it uses net 4.8...

jolly epoch
#

have you tried proton?

rocky kelp
#

lemme see

jolly epoch
#

unironically, proton might work better lol

#

or even proton GE

rocky kelp
#

it will default to ge since all my prefizxes are ge

jolly epoch
#

gotcha

rocky kelp
#

GE just alters the prefixes not the protontricks application itself

jolly epoch
#

afaik, wine's way behind proton in terms of compatibility, even if proton is built on wine

rocky kelp
#

i just don't like using proton because it requires me to use a steam game's prefix

#

with wine i can just double click an application and it'll open

jolly epoch
#

you can add a non-steam application as an app on steam and then set it to use proton GE

rocky kelp
#

nope it's still not letting me drag and drop

jolly epoch
#

sure you still have to boot it from steam, but if you use steam enough that's a non-issue

#

you can browse

rocky kelp
#

what happened to him

jolly epoch
rocky kelp
#

doesn't know if it's light or dark mode

jolly epoch
#

does it work?

rocky kelp
#

nope

#

it still won't let me drag and drop

jolly epoch
#

darn

rocky kelp
#

didn't work even when i named the directory en.cpk

faint plinth
#

You are cursed ๐Ÿ˜”

jolly epoch
#

true

rocky kelp
#

rip

#

wait

faint plinth
#

Transparency/logging re: what's actually getting saved and where would help here, though.

rocky kelp
#

could it be that it's because it's in lowercase

#

like it's .bmd not .BMD

faint plinth
#

Oh, that can sometimes have an effect.

rocky kelp
#

let's try

faint plinth
#

Windows pathing and thereby apps that are built for that expecting case-insensitivity... my nemesis....

rocky kelp
#

yep that was it

#

case sensitivity...

faint plinth
#

Yeahhhh ๐Ÿ˜”

rocky kelp
#

normally i'd put them in uppercase but all of gay joker's file extensions are in lowercase

faint plinth
#

I've been really struggling to get case sensitivity to behave cross-platform. I'm sure there's some obvious way I'm missing that isn't just "be on windows" or "do recursive regex filesearch" dark

rocky kelp
#

that's funky...

#

oh the sound of the door opening plays first

faint plinth
# solemn zealot

Okay, I thiiiink I fixed this with the changes I just pushed. (Basically: if you moved the new MAB_ command around at all, I think it might have suddenly worked, lol. But I was doing the command sorting that fixes this only when a command moves, not actually when one is added.)

solemn zealot
#

will try when i can

solemn zealot
#

i wish you a very gay day

solemn zealot
#

i hate mla_s holy shit naodead

#

they are pure jank

rocky kelp
solemn zealot
#

perchance

#

ajda, do you know?

faint plinth
#

Every day is a gay day in my house ๐Ÿ™‚โ€โ†•๏ธ

weary pelican
#

Lucky

amber moth
rocky kelp
#

i know

amber moth
#

not true

weary pelican
#

Did you know ๐Ÿ‘€

rocky kelp
#

i did

#

i was makeing a joker

#

a joke

#

i'm so used to typing joker

weary pelican
#

I mean Cross

rocky kelp
#

that's a fun nickname

#

i've just been using cg

amber moth
weary pelican
#

Hmmmm

amber moth
rocky kelp
#

cross what art thou pronouns

amber moth
#

guy

rocky kelp
#

guy

#

guy/guy

amber moth
#

guy/guys

solemn zealot
faint plinth
solemn zealot
#

well it works now

faint plinth
#

I should really just make coordinates visible in all modes until I figure out whether/how they get set automatically in other modes....

solemn zealot
solemn zealot
#

...a "you have unsaved changes. you sure?"-type prompt when closing the thing would be nice

faint plinth
#

It would... but that would also require a way to detect said changes, which doesn't have an obvious implementation. I do agree, though, so I'll think about that as I work on the general/vague More Intuitive Compiling/Saving task (which I am currently).

mellow gazelle
#

simpler to just have it always appear tbh lol

solemn zealot
faint plinth
#

Lmao, real. Work smarter, not harder.

amber moth
#

and make it appear 50 times just to make sure

solemn zealot
#

you need to do a captcha every time to close

faint plinth
#

Just a "do you want to save before closing?" popup might be nice. 50 times, yes adachi_true

#

Sigh, even then, I have been avoiding this file management overhaul work for like a full year now. But I think I can no longer avoid it re: more intuitive saving....

#

Simply necessary to de-jankify script stuff pensivekechi

amber moth
#

if you think about it, render view could help you avoid it more

faint plinth
#

That's the problem ๐Ÿ˜…

#

Render view would also benefit from it, though ๐Ÿ˜”๐Ÿ˜”๐Ÿ˜”

#

So characters stop randomly appearing in their winter fits in summer events and such, lolll.

solemn zealot
#

have a motivational dog

amber moth
#

99% of gamblers fix tech debt before it becomes a problem

solemn zealot
solemn zealot
# solemn zealot

so, when copying, it references the node instead of saving a 'copy' to the program's clipboard?

#

deleting is fine tho... i'm confused

faint plinth
#

Shallow copy moment ๐Ÿ˜…

#

I thought it was a deep copy, but seems like I missed a thing or two ๐Ÿค”

toxic marsh
#

you missed the list inside a list inside a list inside a list adachi_true

#

isn't there a function like python copy.deepcopy in C#?

faint plinth
#

There definitely is, but there are a few separate objects associated with each command, and it's possible I missed deepcopying one of them.

faint plinth
solemn zealot
#

message id does use the new value on the original node on a new paste as well

#

so far everything i tried has the same behavior

faint plinth
#

I mean if you change the value after copypasting.

solemn zealot
#

oh no, the value doesnt update

faint plinth
#

Okay, so... weird.

solemn zealot
#

its only when pasting

faint plinth
#

OH WAIT, I see.

#

So the copy isn't shallow, but yeah, the copied reference is just a pointer.

#

That's much more expected, albeit unintuitive.

#

Hm, so maybe I need to do the deepcopy earlier.

solemn zealot
faint plinth
#

The reference still exists in the clipboard, so all the info remains.

#

Sounds like the clipboard needs to hold a deepcopy rather than a shallow copy, though, instead of doing a deepcopy upon pasting.

solemn zealot
#

oh yeah i just remembered of something else
clearing frames does not seem to properly delete the nodes. if i clear for example the middle of the evt, then add more frames, and then save: in the editor, everything looks normal... a bunch of empty space caused by clearing the frames that contained nodes, and then adding new frames back in. but when booting the game, you notice that the event is doing stuff that it shouldn't, and when you reopen the evt, you realize that the old nodes stuck around on the added frames that they used to be in

#

idk if i explained correctly

faint plinth
#

Ooh, I see. I'll see if I can fix both of these in a single PR.

rocky kelp
#

for some reason previewing ryuji's animations is just... not working?

#

0 comes up as his t-pose and the rest are just blank

#

when i cycle through then go back to 0, now 0 is blank

solemn zealot
#

because most get kinda wack if not 1

rocky kelp
#

er where would i find that

solemn zealot
#

Assets

#

Ryuji has character id of 2

rocky kelp
solemn zealot
#

yeah these values for some reason get very weird

rocky kelp
#

whyyy

#

i just didn't add an ryuji animations. he is still

solemn zealot
#

have you seen it ingame?

rocky kelp
#

bruh why is my game shitting itself

solemn zealot
#

it generally works normally ingame

rocky kelp
#

i can't because for soome reason my screen goes black when i click test field

solemn zealot
#

is your screen stupid

rocky kelp
#

sometimes this happens because dxvk likes to shit itself

faint plinth
faint plinth
# rocky kelp

If you set it from 6 to 36 it should Just Work, in theory.

rocky kelp
#

dialogue in question

rocky kelp
# rocky kelp yep

nvm reloaded corrupted my prefix again </3 (i should report this, probably)

rocky kelp
#

they're so awakward just standing here... but i'm too lazy to do any work

rocky kelp
#

ok enough of this event

faint plinth
#

I really love how much the wave of event editing right now is generally agreed on the "kinda clueless but ultimately well-meaning ally" Ryuji of it all naocd

rocky kelp
#

he's an idiot not a bigot

ocean acorn
#

as it should be adachi_true

solemn zealot
jolly panther
solemn zealot
jolly panther
jolly panther
#

Also, is it okay to ask questions in here for EVTUI or should I make a thread for that? cinna_question

solemn zealot
#

probably here? seems more convenient

faint plinth
#

Most folks just ask here, since it'll just be me answering anyway, lol. But if you feel like something would be better suited to a thread, that's also totally fine. I don't think there's a wrong choice, really.

jolly panther
#

Okay! Great, Ill just ask here then. Im so bad at explaining so please forgive me if I word this in a confusing way...Im basically trying to figure out how to add in a new message between two existing ones. Like I would have to rename all the message numbers in adjustment, add those slots into msg.h, and then add them into the timeline by adding the msg then selecting the correct one in the drop down right? The thing is I cannot find my edited message there.

Sorry if that was confusing!

faint plinth
#

One issue you may be running into is that the tool's ability to find scripts with different path names is... a little broken at the moment ๐Ÿ˜…

#

However, if there are no existing mod edits to this event, it should be fine, just a multi-step process.

solemn zealot
#

i think the actual name of the message only matters on the initials like MSG_ MND_ DVL_ right? the numbers do anything if referencing the id and not the order?

faint plinth
#

Basically: Add your new messages to the end of the .msg, or even in between other existing ones. The specific ordering and numbers don't matter as long as they don't overlap existing ones, but the message names do need to match the naming pattern! (Otherwise, you can use MsgR to just point to the index of the new one.)

But, crucially, you do need to press the Compile button after you've made your changes in the script tab for the new content to show up in the timeline.

solemn zealot
faint plinth
#

No need to touch msg.h. It doesn't do anything, lol.

solemn zealot
#

man i suck at using obs

jolly panther
#

ooooh! Wow I learned so much right now, thank you!

solemn zealot
#

you can generally add stuff inbetween, but if something references a message by index, then that fecks everything up

#

for most events should be fine tho

solemn zealot
jolly panther
solemn zealot
ocean acorn
faint plinth
#

True, the name is more stable. It just requires your message to have the right pattern of name, but going by the game's own examples it should be easy to do so.

#

(Also going by the video above, which is an excellent little tutorial ๐Ÿ˜„)

jolly panther
faint plinth
# solemn zealot example

Looking closer, I'm actually surprised this works without matching the full major/minor/sub ID underscoring in the name pattern... I wonder what the game would do with this ๐Ÿค”

#

(Possibly I need to be stricter about which names are allowed to display, since some may not work and it'd be misleading to show them.)

solemn zealot
#

it works in flowscripts at least

#

feck it i'll test it

faint plinth
#

It might just select MSG_000_0_0 or whatever under the hood, tbh. ("It" being EVTUI here. The name has to be parsed back into major/minor/sub ID for the actual command in the EVT.)

#

The string selection of message names here is a bit of smoke and mirrors ๐Ÿ˜…

ocean acorn
#

can messages in bfs actually be called directly by the evt normally
jazz club handles that stuff in the bf and then i guess calls the procedure by scr_ command

faint plinth
#

I think they can only be called via Scr_.

faint plinth
#

Yeah, that makes sense. It can find that message but not actually parse it. I should fix that! (Which means this message would not actually show up in the list.)

solemn zealot
#

oh so that show this works

#

in flowscripts you can just return any name, but evts seem different

jolly panther
solemn zealot
#

yeah give it some unique id that follows the pattern

faint plinth
#

Yeah, it actually constructs the name out of the major/minor/sub IDs.

#

So it needs to be like MSG_420_6_9 to actually get parsed properly.

#

I will definitely add that constraint to the Msg_ display to be less misleading.

solemn zealot
#

so this just work in its own unique way

faint plinth
#

Yep!

solemn zealot
#

morgana would never say sh*t MonaConcern

jolly panther
faint plinth
#

Fortunately, you can at least tell whether it's going to work based on closing and reopening the Msg_ editor to see whether your selection sticks. Still annoying, but....

faint plinth
jolly panther
#

Wait so I named it 39? To be fair! This is a mod that Im editing so maybe thats why?

faint plinth
#

I think you need to get rid of one of the zeroes.

solemn zealot
#

im not sure 4 digits work yeah

faint plinth
#

So MSG_039_0_0 should work.

jolly panther
#

omg I didnt even realize that

faint plinth
#

Maybe I will add a constraint so incorrect patterns can't be selected, plus a little โ„น๏ธ icon next to the name selection to explain what the pattern is.

jolly panther
#

Thank you !! I can be silly and miss things people would normally get immediately Naonod

faint plinth
#

No worries -- it's not obvious or documented!

jolly panther
#

and like magic she's working! femc

solemn zealot
#

okay but whats the benefit for atlas in doing the ids this way specifically for evts

faint plinth
#

Lmao, I have no idea what the benefit is. I guess to give a way to make the specification not sensitive to message order, within the constraint of not having strings in commands.

#

But like... there are strings in EVTs. So I really don't see why they couldn't have one here....

ocean acorn
solemn zealot
#

noooooo

rocky kelp
#

oh yeah I remember that

jolly panther
#

I got an infinite loading screen...dark I guess because I saved all and still had jokers models loaded...

faint plinth
#

That wouldn't save Joker's models or anything. So it's probably something with the msg or mod structure.

#

"Save all" just saves the EVT, ECS, BMD, and BF files related to the event.

solemn zealot
#

does clicking the wrench print out any errors on the window below?

jolly panther
#

No not that I see

#

Maybe I spaced the msgs out weirdly or something?

faint plinth
#

I wouldn't think that would lead to an infinite loading screen ๐Ÿค”

#

What do your added messages look like?

jolly panther
#

oh could it be because I didnt tick these options? I notice some of the others have them on

jolly panther
solemn zealot
#

these boxes dont cause this

faint plinth
#

I also wouldn't expect that to be the issue, no.

solemn zealot
#

at least not the lack of marking them does

#

man english is hard

faint plinth
#

What do the messages you added into the BMD look like, I mean?

#

I wonder if it's something with voicelines or bustups.

jolly panther
#

Oh in the script?

faint plinth
#

Or with BMD emulation something-or-other.

#

Yep, the script!

jolly panther
#

Actually I did edit a voiceline

solemn zealot
#

show the lines

jolly panther
#

Sorry the new ones or just the whole thing pasted in?

faint plinth
#

The new ones should be enough.

solemn zealot
#

anything that was changed

jolly panther
#

[msg MSG_008_0_0 [Fad-Following Woman]]
[s][vp 8 0 0 0 6 0]You really dont know? Akechi-kun. You know,[n]the next-generation Detective Prince...?[n][f 1 3 65535][w][e]
[s][vp 8 0 0 0 6 0]Should we ask him for an autograph?[n]Would be worth bragging about[n]on the fansite...[n][f 1 3 65535][w][e]
[s][vp 8 0 0 0 6 0]And who's that with him?[n]Do you think she's his girlfriend...?[n][f 1 3 65535][w][e]

[msg MSG_039_0_0 [Forgetful Woman]]
[s][vp 8 0 0 0 5 0]...It certainly looks like a[n]date, doesnt it...?[n][f 1 3 65535][w][e]
[s][vp 8 0 0 0 5 0]...Hey![n]Are you pouting?[n][f 1 3 65535][w][e]

[sel SEL_010_0_0 top]
[s][f 0 8 2 1 2217]I didnt realize you're so popular..[clr 27][e]
[s]I know the feeling.[e]
[s]Should we tell them to leave us alone?[e]

[msg MSG_011_0_0 [Akechi]]
[s][bup 0 9 0 65535 0][f 4 10 65535 0 0][coop 9 10 9][vp 8 0 0 0 65535 0]I don't understand how, to be honest.[n][f 1 3 65535][w][e]
[s][f 4 10 65535 0 0][vp 8 0 0 0 65535 0]I'm sure she doesn't mean any harm,[n]but I don't want to cause any trouble[n]for the store.[n][f 1 3 65535][w][e]
[s][f 4 10 65535 0 0][vp 8 0 0 0 65535 0]Rumors could start about us as well[n]if we are not careful...[n][f 1 3 65535][w][e]

[msg MSG_012_0_0 [Akechi]]
[s][bup 0 9 0 65535 0][f 4 10 65535 0 0][coop 9 5 9][vp 8 0 0 0 65535 0]Is that so? At least, you're better[n]at blending in than me.[n][f 1 3 65535][w][e]
[s][bup 0 9 0 65535 0][f 4 10 65535 0 0][coop 9 5 9][vp 8 0 0 0 65535 0]Hopefully no one else notices,[n]it would be a bit of a problem if...[n][f 1 3 65535][w][e]

[msg MSG_015_0_0 [Gossipy Woman]]
[s][vp 8 0 0 0 16 0]Wait! gasp You guys, is that Goro Akechi!?[n][f 1 3 65535][w][e]
[s][vp 8 0 0 0 16 0]Quick, take a picture![n][f 1 3 65535][w][e]

[msg MSG_028_0_0 [Fad-Following Woman]]
[s][vp 8 0 0 0 6 0]Aww! If he was the real thing, I could've[n]bragged about meeting him online.[n][f 1 3 65535][w][e]

[msg MSG_040_0_0 [Forgetful Woman]]
[s][vp 8 0 0 0 5 0]Seriously? You need to get off that fansite.[n]It's all you talk about lately![n][f 1 3 65535][w][e]

[msg MSG_037_0_0 [Akechi]]
[s][bup 0 9 0 65535 0][f 4 10 65535 0 0][vp 8 0 0 0 65535 0]Looks like our coffee's gone cold. Why[n]don't we order new ones?[n][f 1 3 65535][w][e]
[s][bup 0 9 0 65535 0][f 4 10 65535 0 0][vp 8 0 0 0 65535 0]My treat.[n][f 1 3 65535][w][e]

[msg MSG_038_0_0 [Akechi]]
[s][vp 8 2 0 54422 65535 0]Here, let me walk you to the station.[n][f 1 3 65535][w][e]

[msg MND_041_0_0]
[s][vp 8 0 0 0 65535 0]Akech-san and I chatted[n]on our way back...[n][f 1 3 65535][w][e]
[s][vp 8 0 0 0 65535 0]...[n][f 1 3 65535][w][e]
[s][vp 8 0 0 0 65535 0]I noticed we received many[n]looks from people...[n][f 1 3 65535][w][e]

#

omg that was a lot ๐Ÿ˜… please dont judge my writing...!

#

But that should be everything I changed

solemn zealot
#

not related to the error, but just pointing out the missing i

jolly panther
#

omg thank you!

faint plinth
#

Well, nothing looks structurally wrong here. How did you place the Msg_s in the timeline, then?

#

Possibly you did put them too close together hmm

solemn zealot
#

the text itself doesnt look like the issue. it compiles fine and the event loads normally

jolly panther
#

Like roughly this apart?

#

Maybe I made it too long? I did insert quite a few keyframes

solemn zealot
#

i dont think msg_ spacing ever caused any issues for me

faint plinth
#

Might also be the Scr_ happening during the message.

#

Can you share the .EVT and .BMD (or .msg) directly so we can look through them? Or just the .EVT, since you already shared the new script content.

jolly panther
#

Im sorry, Im so new to this! I really appreciate you guys helping. Hopefully its not something simple Im missing.

faint plinth
#

It's very possible it's also something the tool is doing! And even if it isn't, it's helpful to know what common pitfalls are so we can possibly add failsafes around them ๐Ÿ™‚

#

Everyone is new to EVT editing, lol. Doing it in any detail is a pretty new art, relative to P5 modding generally.

rocky kelp
#

girlkisser does black magic

jolly panther
#

(fingers crossed its not something silly)

rocky kelp
solemn zealot
#

the power of yuri compels me

jolly panther
#

I never thought of Shiho x Ann but now I need to see their dynamic

rocky kelp
#

it's the only Ann ship I really like

weary pelican
#

So true

solemn zealot
#

the moment the render is out i'll do a closeup of an annshiho kiss as a tech demo

jolly panther
#

I saw that they kiss!

#

It makes me happy, I really like Shiho and felt bad she got pushed out the story

faint plinth
jolly panther
#

Idk if that makes sense

faint plinth
#

So for this one:

[s][vp 8 0 0 0 6 0]You really dont know? Akechi-kun. You know,[n]the next-generation Detective Prince...?[n][f 1 3 65535][w][e]
[s][vp 8 0 0 0 6 0]Should we ask him for an autograph?[n]Would be worth bragging about[n]on the fansite...[n][f 1 3 65535][w][e]
[s][vp 8 0 0 0 6 0]And who's that with him?[n]Do you think she's his girlfriend...?[n][f 1 3 65535][w][e]```
...is the original message still in the BMD, in addition to the new one you made here...?
#

I guess I should just ask for the BMD or msg itself at this point, lol.

jolly panther
#

I'm pretty sure

jolly panther
faint plinth
#

These seem to be just the vanilla BMD/msg files.

jolly panther
#

Oh Im sorry! You wanted my edited ones or the original one?

faint plinth
#

The edited ones!

jolly panther
#

aaah sorry! let me grab those

#

This is so weird its not letting them send...

faint plinth
jolly panther
#

I can send other files but not these ones.

faint plinth
#

Weird!

jolly panther
#

Thats probably why it isnt working in the application either...Let me try again making a new bmd from evtui

faint plinth
#

Well, my other guesses:

  • A lot of your messages have longer durations unnecessarily, since you copy/pasted them from other longer ones. You could probably shorten them to 1 frame under Frame Settings. I wouldn't necessarily expect that to be the issue, though.
  • There are a few spots where you've only partially shifted things, so Msg_ commands have Scr_ commands running in the middle of them. This could possibly break things....
#

It's also possible that the partial shift is an issue with the tool's frame-adding, but that's the main thing I'm noticing.

jolly panther
#

Hmm, maybe the scr thing is the issue? It seems my edited file doesnt want to work or upload for whatever reason.

faint plinth
#

My recommendation: try loading the game/event with only the script modded, without the modded EVT, to confirm whether the issue is there or in the EVT.

jolly panther
#

Thats a good idea

faint plinth
#

That should help us narrow it down, at least.

jolly panther
#

No it seems to load with the vanilla (well the original modded version)

faint plinth
#

So with your modded BMD, but without your modded EVT, it loads fine, and plays your modded versions of e.g. MSG_008_0_0?

jolly panther
faint plinth
#

Okay, what if you include your edited BMD, but not the edited EVT?

jolly panther
faint plinth
#

Oh, hmmm. So then it probably is a BMD issue?

#

....oh, also, it looks like R&V also edits this event. So possibly that's the issue!

jolly panther
#

Oh!! Wait Im sorry I thought I said that catJAMCRY

faint plinth
#

I think you did! I'm sort of going through all the possible issues, haha.

#

So, the """vanilla""" R&V version works. If you've just been editing the BMD (or only trying to load the game with those edits, rather), then the issue could be something with the contents of the edits... or it could be how you've structured your mods relative to R&V.

jolly panther
#

I think you are probably right that something is wrong with the contents of the bmd because they wont even upload to discord ๐Ÿ˜ญ Like Idk what I did there lol

faint plinth
#

No idea what would happen that would also prevent it from being uploaded to Discord ๐Ÿ˜…

#

Even the .msg version of your modded BMD won't upload?

jolly panther
#

Oh yeah I guess so

#

Just not the .bmd

faint plinth
#

Looks reasonable at a glance, hmmm....

#

If this is specifically an issue with loading a custom BMD on top of R&V, it may be worth asking in that thread, too. But I'll dig and see if I can find anything.

jolly panther
#

Yeah I think Im going to do a simple test message edit and see if that works first

faint plinth
#

Good idea naothumbsup

jolly panther
#

But that is a good idea! Ill open a thread about it then too. Thank you so much for all your help and trying your best, you didnt have to do that and it was super nice of you ๐Ÿฉท

faint plinth
#

It's kind of a weird edge case, because I have a hard time imagining what someone expects if they modify something in-between cutting and pasting it, but....

ocean acorn
#

how would you even edit between cut and paste

faint plinth
#

The original is still there until you paste. Only then does it get deleted.

#

I suppose I could have it get deleted when it's Cut rather than when it's Pasted, but that's not a thing with consistent behavior IME. Like, cut text tends to disappear when you cut it, but a cut file/folder in a GUI tends to stick around until it's pasted somewhere.

#

So the latter makes more sense to me as a similar feature... but then it does leave this weird edge case of being able to edit it between cut and paste.

#

...and at least on Ubuntu, a cut/pasted file that gets modified in-between does seem to paste in its modified state....

#

So naotoshrug IDK. I'll do whatever seems intuitive here. But that's not obvious.

#

...copy/pasting files and folders also pastes the version as it was modified in-between copying and pasting. Soooo, I super don't know. Does copy/pasting commands feel more like copy/pasting text, or copy/pasting files? ๐Ÿ˜ตโ€๐Ÿ’ซ

harsh carbon
#

I feel like with just about any software I've ever used that's meant for creating/editing files cut works just the same as with text and tbh i think the way it's handled with text is how it's actually meant to work (since after all you are cutting the selected portion and pasting it somewhere else) morgantrue certainly would be my expectation going in

faint plinth
#

Yeah, I can see that ๐Ÿค”

#

As long as deleting upon cutting wouldn't be annoying, I'm fine with doing it that way.

faint plinth
jolly epoch
#

since that would be useful for me

#

the event I did where Ann ignored Kamoshida was made a bit weirder due to that issue

faint plinth
#

Yep, it's pushed!

jolly epoch
#

weird

#

I got an error saying it didn't exist but now it's working

ocean acorn
#

tries to preview an anim
crashes
ok

solemn zealot
ocean acorn
#

is there a way i can like. move the preview, or...