#🎛️ vic's Custom Match-inator
1 messages · Page 25 of 1
NOOOOOOOOOO
VERY VERY WRONG
💀 ?????????
just check it out
what thing?
- this is a mod thread, go to general or to general 2
i got this when i searched it up
poor vic man, ts is so unrelated 💔
i told them to go to general 🥀
This match is so custom
did anyone tell vic about that one bug where you snap to certain surfaces?
no need to, i've encountered that bug many times myself. honestly, i thought it was a vanilla bug that's why i didn't address it
however the problem is indeed not present in any 2.x vanilla version so...
well, no idea
eh? what's the bug
so this seems to happen when losing all momentum after bonking on a wall while airborne. clearing the ledge in this moment will "restore" your momentum and snap you to the floor above, sending you running forward instead of actually keeping you stopped. i don't believe this happens everywhere... it's on objects like pipes, i think? @vagrant surge if you got no idea then that's fine too, i'll just look into it myself. just asking in case it's something you've encountered before
oh sorry you're already here didn't see
its a vanilla bug but pretty rare
you've based vmci on 2.0.3, right?
it mightve been improved in 2.0.4
oh, rare... it's intriguingly consistent and common in vcmi. 2.0.3.0, yes
simple solution, merge from 2.0.4 :)
try taking just the PhysicsObjectSystem from 2.0.4, actually
yeah i was going to do that eventually, thus my low priority on this lol
good to know it's actually a vanilla fix then!
i doubt youve edited that so less merge issues
ya
i barely understand the physicsobjectsystem so im sure you dont even want to look at it lmao
😬 i understand, i have no need to change anything anyway... not that i'd know how to
oh, there's multiple physics related scripts. you meant physicsobject.cs, physicsobjectsystem.cs, betterphysicsobjectsystem, or just all three to get it over with...?
hm, none of those three contained any meaningful changes (mostly just newlines, etc.) and the problem is still present
Vic's mod has a curse of having slightly different physics
just physicsobjectsystem.cs
interesting that it didnt fix. hm
ok, i checked out my first commit on this 2.0 port branch, and the bug is not present. so it actually was something that i introduced during development
aight found the commit where the bug first appears. let's see what's different...
@vagrant surge ...the jump velocity had been increased (6.7 vs 6.6). lowering it back down a tiny bit solved the problem
what an oddball
even stranger: if instead of decreasing it back to its original value, i increase it even further, the bug disappears as well
game doesnt like 67
cosmic comedic coincidence
shroob
or most sml2 enemies
Omg there is so many new customization stuff i might not even know how to use Triggers anymore
Let the big brain guys cook up gamemodes for us 
ya they're definitely more complex... but also soo flexible! and i mean, technically you can still use them like the simple ones in 1.7, just ignore the "Who"s lol
hrm... getting tired of the small soundtrack... most versus maps still use just the two from mvl. i wonder what other goode songs i could use...
the thing is, they need to be sequenced so like, i'm limited to nsmb games
mkds mission mode and battle mode always felt like solid themes for mvsl to me
and since it’s a ds game yur files r rite there :clueless:
let's give them a listen
hm, they kinda sound like menu songs not something you'd hear mid-match
like "select your stage!" kind of sound to them
however i really like sseq_0033 and sseq_0034 (i have no idea what they are)
Could you show me what sseq_0033 and sseq_0034 sounds like?
sure
screen recording time
prob a track theme,,
i'm sure it's recognizable to you instantly so i'm only giving you 5 seconds (i nmever played any mkds so i shrug)
-# why do I recommend you mkds soundtracks yet what you actually like FROM mkds isn’t an mkds original 😭
yoshi circuit and baby park are from double dash 🥹
imagine baby park in vcmi
how do we do a mvl baby park
maybe bricks is the mvl version of baby park shrug
yea
bricks 2 where its just 1 screen that loops in on jtself
i played mkds in my childhood, i barely played it and sadly, i didnt get to unlock R.O.B. I also couldnt recognise that music
yet you dont add him 🫠
will we ever be able to rebind the emotes?
ay cabron
ucky kong
viva españa
actual volcano song is BACK thanks to foxyyy's rewrite and export to midi...
definitely sounds like a midi
the way the video cut 😭
hope that's not a bad thing because tbh it sounds great to me
it’s not bad but it does sound kinda weird to me
i feel like some instruments are too loud
like the square waves
well there's definitely a fun story behind that bc they used to be much louder in previous iterations of this export
and so they were lowered substantially
some mvlo songs like bonus can be back or no?
No
Bonus got a reveerb effect when i first checked the flp
Omg Luigi's shadows looks sooo good in here
Why can't we have ts in the base game 🥀
vic's lighting wizardry
can be added to the soundfont
Holy krabby patty
i actually already did this the marimba in the vid has a light effect in it 😇
-# the orchestra hit does too since both had effects in the actual flp
afaik i can only do volcano and like
sky
MAYBE ghost house with like a very small chance but
since yall vanilla musicmaker fellas like cheating a shit ton with yalls music yall make me want to not do ts ✌️
me when i’m cool and i use a tracker without cheating
fuck trackers
i'm happy to announce a new level i've been working on
I thought u were being genuine 💔
i got baited so hard
relatable
we got 
Really cool level, I like the fact that it || ||
thank
my dumbass clicked on that shit like 7 times fuck you
ur such a dumbass
turkish dumbass
i remember we had a romanian too
i would summon him on the spot for this but i dont feel like it
jarvis, abort the summoning
authentic dumbass
Bro described him perfectly
authentically autistic dumbass
why would you click 7 times on a video
i think that's not a video
omg lol 😭
tongue
baby mega 🥺
i saw that the starman didnt have a box icon so
this looks cool but why would you want this
it looks weird when you have a powerup in your box but it doesnt have an icon
It has already been fixed, thanks
no
why
because i feel like it dunno
hi there
these rules are so back
this is giving do not the bob omb vibes
no not really
vic i broke your character select screen
little bone hat :)
dat lag spike tho
maybe sending like 128x16 block break events isnt a good idea
yeah i agree...
i was thinking of a way to break the terrain in chunks, with a tiny delay inbetween each one
the smaller albeit still noticeable lag spike at the beginning, when all the tiles are being brickified, is also a tiny bit annoying... could be nice if that happened during the "loading" portion instead of shortly before the players spawning
StageSystem
the StageTiles array is initialized twice technically
once when the map loads, the second when the gameplay starts (enemies are spawned)
if you do it when the map loads as well, itll be a lot more performant because it refreshes the entire tilemap at once
aha. currently i'm doing it inside versusstagedata's resetstage function
Wait "Killed enemy" condition wasn't already in?
the video isn't loading!!
it used to be "stepped on enemy" in 1.7, but it isn't a thing in vcmi 2
so now it is a thing
Ah!
That's great vic
Nice job
this will be much nicer to properly communicate how a gamemode works 😋
thanks man 🙏
delayed earrape
😭
Some old rules needs to back
this needs to play twice
"ding ding" rather than "ding"
like mario 64
i thought about that but it could become confusing in real situations because it just sounds like the jingle was played twice
but the error sound goes twice :(
both jingles are two notes
that only go once :]
say i saw that in the constraints you can chose the "Actionner", will it be possible to set the Who condition to the actionner as well? (for bumps, stomps maybe?) Just curious
you mean the condition target being set to "actioner"? that's not possible. it doesn't make sense for "the person who needs to do something" to be "the person who something will happen to". think of triggers like a timeline. the condition is the past, and the action is the future. you can have the actioner be the conditioner (aka "the person who something will happen to" is "the person who did something"); but you can't have it the other way around because you can't travel forwards in time
however, as for your other concern, next version will include conditions such as "stomped someone" or "killed someone", to target the attacker instead of the victim
I mean yeah it wouldn't work for most conditions
but alright, having those conditions was exactly what i was thinking of, so that's great!
includes the starman ost
dear god my ears
really good addition
It may be a stupid question, but why does it go up 18 by 18?
the limit happened to be 18 in the vid. depending on how big the recursion is, it might be more or less...
it's kinda detected automatically, the limit being close to what would've caused a crash. that way it's neither too low or too high
this shouldn't be noticeable in normal gamemodes, it's just to prevent "wrong" rules!
Detected how :3
using RuntimeHelpers.EnsureSufficientExecutionStack() 
that might cause desyncs
i think the stack size can be different on every client
leading to different numbers of executions
Awww
But the alternative is to have everyone crash...
I envision this to be a rare thing, not to ensure a certain number of executions, rather a way to catch the problem and tell the host "go back and review your rules"
I believe a desync, from which you can go back to the room, tell everyone to rejoin, maybe backup your ruleset, is better than the game closing suddenly!
the alternative is to have a proper "rule execution counter"
:P
Thing is it's not about the number of rules executed at one time... It's the amount of them that are recursive...
rule recursion counter
create a system that detects recursive rules from the get-go then?
also by "rule execution counter" i mean like recursive rtules
I used to have that but it was far from exhaustive. It's not feasible to try and detect all possible combinations where a ruleset can contain recursive triggers (keep in mind triggers can be chained)
Don't see how I could do that. We don't know if a condition came from natural sources or from another trigger
This works good enough
why not?
all you'd need is a mapping from effect -> trigger
for example, ActGiveCoin -> CollectCoin
then for each rule, you check if you can ever loop back to executing the same rule
what about a int depth; variable... when the trigger runs you ++, when the trigger ends you --
if that depth ever goes above a constant, you dont execute any further effects and you bail early
Again, it's not that simple. The vid shows an example: "got coin -> give star ; got star -> give coin". That's the simplest two trigger recursive rule, but it can go on indefinitely
That's what I was trying to explain earlier lol
it doesnt matter how complex
I have no way of knowing if a trigger was activated by another one (recursion depth increases), or by normal gameplay (recursion depth should not increase)...
just increase in both cases
the problem is recursion, right?
so if you did
public void Update() {
SendTrigger(EveryFrame);
}
public static void SendTrigger(Frame f, TriggerType trigger) {
if (++triggerDepth > 20) {
return; // Fail early. recursion depth reached.
}
f.Signals.OnTrigger(trigger);
triggerDepth--;
}
something like this
now imagine you have
EveryFrame -> GiveCoin
GetCoin -> GiveStar
GetStar -> GiveCoin
SendTrigger(EveryFrame):
triggerDepth++ -> 1
SendSignal(EveryFrame):
Rule (EveryFrame -> GiveCoin) triggered
GiveCoin calls coin interaction executer
SendTrigger(GetCoin):
triggerDepth++ -> 2
SendSignal(GetCoin):
Rule (GetCoin -> GiveStar) triggered
GiveStar calls interaction executer
SendTrigger(GetStar):
triggerDepth++ -> 3
SendSignal(GetStar):
Rule (GetStar -> GiveCoin) triggered
GiveCoin calls interaction executer
SendTrigger(GetCoin):
triggerDepth++ -> 4
...
that case will eventually reach 20 and error out
but if we get rid of GetStar -> GiveCoin:
SendTrigger(EveryFrame):
triggerDepth++ -> 1
SendSignal(EveryFrame):
Rule (EveryFrame -> GiveCoin) triggered
GiveCoin calls coin interaction executer
SendTrigger(GetCoin):
triggerDepth++ -> 2
SendSignal(GetCoin):
Rule (GetCoin -> GiveStar) triggered
GiveStar calls interaction executer
SendTrigger(GetStar):
triggerDepth++ -> 3
SendSignal(GetStar):
No rules triggered
triggerDepth-- -> 2
triggerDepth-- -> 1
triggerDepth-- -> 0
normal execution continues
if you ever get to depth 20 (or whatever constant you choose) you can send the f.Event to warn
just like you do with the stack thingy
oh and the good thing about quantum events... it does a hash and only sends multiple events if the hashes are different. so if you trigger f.Event.RecursiveRules() tons of times in one frame, itll only trigger once in the end (because the hashes are the same because no differing parameters)
heya
problem is that "incorrect" is the same sound as trying to use a reserve item without one
Ye
nsmb still uses it when you go the wrong way in 8-Bowser's Castle at the looping section
That's why I chose the mini game variants. Still familiar and similar but won't lead to confusion
i do see the issue of using it though
te lo digo en spanish pq da hueva el ingles
no crees que sea posible hacer reglas que si tal cosa pasa, el juego manda un mensaje de forma global? que muestre lo q sea q el host haya escrito
tipo no se
got coin = send message "this bozo got a coin"
es un tanto irrelevante pero seria gracioso
creo q lo explique horrible pero si jaja
La manera en la que será abusada me hace muy extraterrestre sollozando
pa cuando los idiomas en vcmi
NNNNNNNNNNNNNUNCA 🗣️
imaginate algo como los mensajes de minecraft xd
cuando mueres
bro realmente dijo extraterrestre sollozando
i’m using the palettes i made for this mod a bit ago using ez mod and ngl they’re actually all really good
i heavily recommend others to use them for ezmod aswell 
after all why shouldn't i add them to vmci right now while we're at it
uhh i think i can make a build soon yeah why not
since this update will have mostly rule-related additions, i think it's fair that for the next one i focus my attention to the levels. as in, add more enemies, obstacles, objects, etc that are missing from og nsmb so the camapign maps aren't as empty or boring and are more unique...
buzzy beetles, standing piranhas, paratroopas, launcher pipes, vines, '?' switches... urgh, please be kind to me mvlo coding
pumpkin goomba :)
The whomst
more like missing hide and seek support
I can't do that shit man if I try to add bg tiles it looks horrible
do you think my attempts at doing so were good then? 🥹
overdecorated maps special effect gg
hi frosty
i fucking did it
Start working bo
okay yeah i did it
i went from making it sound like this to make it sound like the actual song 🥹 ✌️
They were splendid
I used to pray for mods like fcmi
fic
voxyyy
Sebumm
reference
i believe it will send
uh
there we go
the only thing that makes me notice its not really the same is that i think while in fl it uses nearest, here it uses linear i believe? so the instruments sound a little bit different.. but besides that its like close to FULL accuracy and im proud of it
vincells i love you but fuck you for cheating with the orchestra hit and the square waves 🥹
foxyyy what's considered cheating when it comes to converting audio to midi
what i see as cheating in this is using stuff from outside nsmb
not related to midi that much
UNLESS its from outside a soundfont
because vincells thought itd be very very funny to use NES VST so i had to fight gods to find close to accurate square waves in soundfonts
since i make my own soundfonts with only what i need i can take from other soundfonts but having to do that is painful
so yeah what i see as cheating is more on the composing side than anything
Me when Nintendo lowk have bad instrument taste so i use other soundfonts
what um
what happened to the end note
what end note
The sponies jumping oh god
Oh that... Sorry foxy I forgot to tell you but there was a bug with that chord where two of the notes were too short, so I had to go and extend them
im really confused
It's ok I can edit it myself so fl doesn't curse us anymore
ion even get what note yall talking about 🥹
how do you not hear it
the last note is played at the incorrect tone
exactly
I'll send you a thing to show it to you
oh i notice now
its a fucking
1/64th note slammed there
being a pain in the ass
👽
loler
volcano is saved
hooray
now showing
let me set the loopoints
i'm going to krill myself where's the audio
ok rerecord
i thought vic trolled us again
HAHAHAHA
jungle next? 
junjle alr has a song (even if it's not vanilla's)....................
if anything it should be sky or bongus
but that's not for me to decide
oh jungle is the mkds one right
or any of 10p2's maps
ya
desert, ghost house, and beach have ones from mkds too
me when {insert popular music artist} walks into my house
also you can do jungles easily i bet
it’s not made in fl studio
ts so accurate
you don’t have to brah just ask cubby for the midi
and the samples ig
why would that matter tho 
🐱 🔥
can i release the update now or yall asleep (ik it's not the weekend so)

I sleep 
What's sleep again
plea s e
hm, i found a setup that makes the web build only crash 50% of the time instead of always, and run at 30fps instead of 2. might be getting there!
vic discard web for a while
i already discarded it for the entirety of v20.0.1
dw, web isn't like delaying the normal builds or anything
i'm just letting you know how stuff's going
New version: 20.0.2 has been released.
- New conditions: "Every X Seconds", "Stunned Someone", "Harmed Someone", "Killed Someone", "Froze Someone", "Used Powerup Ability".
- New actions: "Explode Level", "Play Jingle".
- Added "All terrain is bricks" special effect. Also, made it so the "No coins" effect also removed coins in blocks.
- Triggers now have more parameters to customize their behaviour!
- Constraints: it's like a second condition that needs to be true while the rule activates. For example, a person having a certain amount of stars, or the timer being above or below a specific value. You can also create custom targets this way, i.e. to affect anyone that's a certain powerup state, or only those who are frozen.
- Action delay: wait before the trigger activates.
- Repeat count: no more duplicates... use this to run the action multiple times at once.
- Random chance: add uncertainty to your triggers...
- Tip: hover over certain buttons to get an explanation of what each feature does...!
- New rule: "score"! This is a brand new counter that does nothing at first, but can be controlled exhaustively using triggers. Create custom timers, variables, or player stats!
- A customizable description field for your room. As host, you can write here an explanation of your ruleset for everyone (including those outside the room) to see and understand.
- Added an option to hide player names, or to show everyone else's coin count (HUD Elements).
- 6 new Versus maps: some previously missing, and others from fellow mod Hit' Em!.
- Added a "Give Up" option in the pause menu.
- Certain replay QoL additions!
- Freecam is now accessible even after the match ends.
- You can zoom even while spectating a player.
- The replay controls hide on their own when you stop moving the mouse (like on YT).
- Added new songs for VS maps! Volcano, underground, alternate versus.
- Added a few extra colour palettes.
- Adjusted physics: lesser grounpound restrictions, remove sticky crouch while airborne, fix crouching while mini, less friction while sliding on ice.
- Fixed some bugs with match settings UI while changing hosts.
- Fixed sticky pipe bug.
- Fixed rumble; now it works again!
- Fixed the vcmi demons.
- Fixed the replay layers for campaign maps.
- Fixed chat not showing in-game.
- Recursive triggers shouldn't crash the game anymore; instead, it will prompt you to fix them!
- Browser build is back on itch.io!
Get it using the Mod Loader or by visiting this link: https://github.com/vlcoo/VicMvsLO/releases/latest
got a bit busy yesterday so i had to postpone
not to fear, i am still alive https://cdn.discordapp.com/emojis/1417242164668399776.webp?size=48&name=um
android controls unchanged
☹️
vic i hav big fingers how i can jump
oh yeah do you like the new maps :]
dawg i cant even play without missing the jump button repeatedly
aw
you'll make it work
i agree the buttons are small but i'm literally using my face to press them and i can still jump
You what
vic
seems like the score is a bit broken atm
i was seeing 0 score while electro said it didn't move
(he's the host)
Ah, it's just the scoreboard it seems
Should still be counting fine behind the scenes
I think there's a problem with the "All terrain is brick block"
Once activated, if you deactivate it it doesn't go away
Also it seems that saving the code for the rules resets the constraint (I had used IsXPowerup -> FireFlower, after loading the ruleset in a new lobby it resetted back to smallmario)
Oops. Apparently the implementation I used overwrites the saved level data
For some reason with this ruleset nobody is given fireflowers
(i wanted to test if the AddXToScore works in the first place because i suspect it doesn't)
Say, is it intentional that everyone hear a jingle being played and not just the person it's played to?
Yes
But.. why? If I want everyone to hear it, i would play it to "Everyone" not the "Conditioner"
I figured it would work like normal sound effects. Positive and Negative "come out" from the character, like their voice lines, and you hear it only if you're close enough
Although you make a good point. To have it individual by default, and then have the user set the target to Everyone only if they want to...
used powerup ability?
so like you could do used powerup ability > harm player so its a single time use fire flower?
that is kinda cool actually 
Not sure what is wrong here. At no point does team A get points (collisions are deactivated) yet when you freeze everyone you win. It feels like a ruleset I deleted is still there but not displayed.
Maybe it considers removing 1 from 0 counts as reaching 0?
So I guess the EveryXSecond rule is entirely broken
I saw it work before but now it won't do anything
Did you add that feature where enemies despawn when outside of the screen? I just saw a shell despawn
Having a rule with AddXToScore and a delay doesn't work. It's specifically with the AddScore with a delay
The score is limited to 1000?
I'm sorry that I have so many complaints
about this
I think it's the opposite, the scoreboard is always right (though it's a little delayed)
For the score displayed above players, it gets updated when you die, get stomped, get a star or get damaged
yes, the maximum is 1000
i have tested that condition and it works just fine
yes, ever since v20.0.1 enemies return to their home whenever offscreen
the timer for the every x seconds condition might've gone out of sync and that's why it won't work for you guys. i've had that happen before, but i thought i fixed it
the only fix atm seems to be remaking the room, although it will desync again after a bit
we already tried that i think
sigh, idk. i think the dropdowns and text ui is not fully updating. that's been hell to code for so
Vic i warned you!
i don't think you did.. i don't remember such...
i think theres some conditions missing here
wheres "if player reaches to a specific amount of score"
tmb hace falta cosas como "restar cierta cantidad de puntos"
no espera estoy un poco estupida
aghhhh el ui sob
hay restar 1, 10, o 100, luego con el repeat ouedes hacer cualquier numero
vic yo creo q deberias organizar un poquito mas las condiciones, me mareo mucho tratando de ubicar ciertas cosas 😭
no se, organiza ciertas condiciones en categorias
world y ui
what the hell
you started twice
i just forget to press down 
praying for the day all the goodness of fcmi gets added to vcmi
you were doing both
Show the code for it?
for the timer? i'm not entirely sure if the implementation is what's incorrect, or the ui is not showing the actual parameters and is making us think it's enabled when it actually isn't. been a difficult thing to reproduce by myself
it's in multiple places:
public byte LoopingSecondsTimerin Frame.User.cs- GameLogicSystem.cs
-
f.LoopingSecondsTimer = 59in the Starting case in Update, below the EnableGamemode statement.
-
- in the playing case:
f.LoopingSecondsTimer--;
f.Signals.OnSecondTicked(f.LoopingSecondsTimer);
}
if (f.LoopingSecondsTimer == 0) f.LoopingSecondsTimer = 60;```
- in MatchConditionerSystem.cs, which observes the signal:
```public void OnSecondTicked(Frame f, byte time) {
// possible parameters: 1, 5, 10, 15, 30, 60. time ticks every second from 60 to 0, and loops.
if (time % 60 == 0) ConditionActioned(TriggerCondition.EveryXSeconds, f, default, "60");
if (time % 30 == 0) ConditionActioned(TriggerCondition.EveryXSeconds, f, default, "30");
if (time % 15 == 0) ConditionActioned(TriggerCondition.EveryXSeconds, f, default, "15");
if (time % 10 == 0) ConditionActioned(TriggerCondition.EveryXSeconds, f, default, "10");
if (time % 5 == 0) ConditionActioned(TriggerCondition.EveryXSeconds, f, default, "5");
if (time % 1 == 0) ConditionActioned(TriggerCondition.EveryXSeconds, f, default, "1");
}```
geez what horrible formatting
is LoopingSecondsTimer serialized / copied properly?
i'd just make it a global tbh
defined in the QTN
no real reason to put it in Frame.User.cs
the Frame.User.cs is more meant for things that aren't easily implemented in the QTN... so for example the StageTiles array
since collections in the .QTNs either have to be fixed size, or limited to the size of a single page of quantum heap space (32kb by default, i think)
@heady sand do you even need this timer, tbh?
couldn't you just increase the modulos for each "every X seconds" 60?
i think i do? to like, know how much time has elapsed
I mean you do (f.Number - f.Global->StartFrame) % f.UpdateRate == 0
that's every 1 second right there
yes, that's the thing that ticks the "one second elapsed" signal
but then i need to know if it ever reached 5, 10, etc
(f.Number - f.Global->StartFrame) % (5 * f.UpdateRate) == 0
now it's every 5 seconds (300 ticks)
ah, i suppose
yee
you can do it either way
simplest change would just be moving the variable to globals or implementing Serialize/Copy
i'll start by moving it to global since it's the smallest change i can do now
speaking of stage tiles, another thing is the all terrain is bricks implementation overwrites the stage tiles but doesn't make them come back. i didn't know the implementation would be "permanent". in StageSystem.cs, i changed OnMapChanged so it looks like this:
[...]
fixed (StageTileInstance* originalData = &stage.TileData[0]) {
if (f.Global->Rules.SAllBricks) {
var replacementBreakableTileInstance = new StageTileInstance {
Tile = f.SimulationConfig.ReplacementBreakableTile, Flags = 0, Rotation = 0
};
for (int i = 0; i < stage.TileData.Length; i++) {
var tileData = stage.TileData[i];
if (!tileData.HasWorldPolygons(f) || tileData.IsSemisolid(f)) continue;
originalData[i] = replacementBreakableTileInstance;
}
}
UnsafeUtility.MemCpy(f.StageTiles, originalData, StageTileInstance.SIZE * count);
}
[...]
i assume i'm replacing the wrong list...? i didn't know too much what i was doing, tbh
yea you are
you're editing originalData
you wanna edit f.StageTiles after the fact
[...]
// Copy to f.StageTiles
fixed (StageTileInstance* originalData = &stage.TileData[0]) {
UnsafeUtility.MemCpy(f.StageTiles, originalData, StageTileInstance.SIZE * count);
}
// Replace f.StageTiles
if (f.Global->Rules.SAllBricks) {
var replacementBreakableTileInstance = new StageTileInstance {
Tile = f.SimulationConfig.ReplacementBreakableTile, Flags = 0, Rotation = 0
};
for (int i = 0; i < count; i++) {
var tileData = f.StageTiles + i;
if (!tileData->HasWorldPolygons(f) || tileData->IsSemisolid(f)) continue;
*tileData = replacementBreakableTileInstance;
}
}
[...]
right right right, so f.StageTiles is what's temporary
i thought originalData was the temporary copy of the stage's tile data
(has never worked with pointers before) 
ok well thanks for the help
it's a temporary pointer, so I can use UnsafeUtility.MemCpy, but it still points to the original data, copy
f.StageTiles is the runtime data for the stage, it's temporary in the sense that it only exists while the map is loaded
the fixed (x = &y) is the syntax that lets me gets a pointer to an automatically garbage-collected object
if you dont "pin" the array, the c# runtime might move it somewhere else, or even garbage collect it, which would invalidate the pointer
🔥
New strat with propeller.
So basically you can go so fast when you hold down while fliyng and then on the slope
So the slope hyperspeed can be done with drilling too, not only gps...
yes
Very cool...
Drilling = Groundpound
Propeller is more useful in Sky and Desert because of it 
not new no 
yes yew ye
Not really new
guys i think he gets it
ah, just found out that by using this implementation instead, i now have to replace the blocks in the ResetStage method too
ye
musoon vally..
enched forst
fine... i'll do it myself... https://cdn.discordapp.com/emojis/1301327931787841568.webp?size=48&name=brian
if you dont want to js let me clone vcmi modern and do it there
🦅
,,could i at least know what version of unity i need to get
I mean yeah if you want to go ahead
Branch is 20-dev
Unity version I don't remember but it should tell you.....
Oh ok I looked it up it's 6000.0.56
i'm just gonna bite the bullet and let that install
anyways, since like midis are something i can manage way better ngl i wouldnt mind trying out some quirky ideas with them in this fork
frontrunning included in midi..
Fun fun...
It's super easy to create variations by changing tempo, pitch, and/or muting channels...
Thanks me 😇
would it be possible to do smooth transitions
because it pisses me off that in fboc it wasnt smooth any time you went on to get the lead
it was just either YES frontrunning or Nah fuck you.
You mean like fading?
Yeah I do it with the menu world songs
Just call the function and it changes songs while fading the volume
Well technically that specifically you can do with normal music too
It's just tweening
What's frontrunning again? Just different songs?
in fboc its the same track but with the special drums
Oh ok
But what do you mean then by smooth
but i added specific instruments exclusively for when youre winning with almost all stars
just the fade in of the thing
like in mario kart 💕
Welll
You could either add the drums to a new channel in the existing midis and then switch it on and off
Or create a second midi with the extra stuff that you fade towards
I might try later to add a way to fade individual channels. Because the mute flag currently is just true or false
If you want you can check out Songinator.cs because allat is there (functions like SetPlaybackState and SwitchToSong which both can optionally take a fade time)
Oh no I left the TV on for so long that they started playing tv slot betting
joker poker Balala
https://cdn.discordapp.com/emojis/1436761736291160194.webp?size=32
the only reason i dont think i will is because i can and must only focus on one thing 😇
@junior tiger will enjoy dissecting this frame by frame 👀
Oh yeah true true eyes on the prize we need those hide and seek compliant levels first and foremost......
vic........
Ok then we don't sorry I didn't mean to be rude do whatever you want to
can you add the color thingys i had for fcmi that said what maps were good and what maps had potential but werent good
nooo vic i just wanted to ask 🥹
Ohh that feature. Well hopefully eventually all levels should become "decent enough" but until then yeah sure
yay
i loved having the levels thingy and having some with green and some with yellow and some with red
fcmi final version had like over half the maps on green 😊
Those were splendid times
i want to play fcmi.......
or just vcmi hide and seek at least 🥹
also gee your fucking game takes ages to load its been stuck at half loading
Hey blame that piece of nonsense unity
First time load is always long, afterwards it'll be much quicker
The devious wait up
the importantest of inators right here
it opened
where do i start... hmmm
why are there 3 main menus
Oh no no ignore the extra ones
They're copies from prev versions I used as layout references
i see
More than 30
h
oooohhhhhhhhhhhh

unity killed itself and my browser
i was watching that you bitch
The devious Ctrl+Shift+T
gg
bower
2-3 is surprisingly a great map for races
i doubt itd be as good for
hide and seek
Is 23 the sewers?
ye
Aha
vic pick a number between 1 and 40
Yeah I like how unique it feels and honestly I believe it can make a nice hide and seek or tag map too

BC of how labyrinthic like it is
yeah
27
what i dont like tho is the dead ends
There are no dead ends
I opened them up
son of a bitch
alright
8-4 it is
@cosmic swan rabano
pick number too
@reef narwhal knock knock number now or i will kill your pet rock
W8 is so underplayed
im about to make W8 great again
huh
pick a number between 1 and 40
pwetty pwease
also @heady sand how are you handling layer stuff here so i can know how to make them be
39
There's two grids, a ground and a background
That should be it. The background uses the "dim" material which makes them darker but still lit by light
why do i feel like i will regret letting you choose anything over 24
two world 8's.......
Noo choose another one right meow
Meowdy I am turnip I choose 16

actually @gloomy socket are you alive i know you are open your closet and let me out
um
auto tile doesnt work there
Oh it might be because of the
Thing where I didn't do
Ok yeah it's not that for me it works
24
Explosion
Does it work on the normal ground? And in other levels?
it works on ground but not on background
oh its bob omb playground

i can work with that
Then maybe delete the bg grid and duplicate the normal ground
Change the material to dim and donezos
...?????????????????????????
Ok
i went to check 7-5 and came back and now theyre doing their stuff??
Vcmi demons
putos espiritus chocarreros
q tocapelotas jajaja
pero es que te juro que
quise poner mas tiles y se volvieron feas otra vez 😭
voy a hacer lo que me dijiste
Idk si no reinicia el programa y ya
Guay
Minecraft ahh terrain
If I see that word one more time I might break someone's spine
hu
number
give me 1 number from 1 to 40
preferably any under 24
and not 37 nor 24 nor 39
vin please don't unalive me
uhh
@heady sand am i forced to use only a single background layer
because my ideas kind of require MANY of them
like up to 4 in worst cases
Nah you can just do what you used to do in fboc 2
Works the same, only difference is that the colour comes from the material instead of the colour picker above
Why
i want to do color picker shit
Are you really going to have that many colours
i may
I mean yeah you can just use the "sprites default" material instead but then it won't follow the light
Which makes me sad
its more of a warning than me needing it rn
Or you can create multiple materials each with their own colour/opacity
hm,.,
But well maybe consider not overdoing it
You're the art director here but sometimes less is more...
It's almost as if giving ghost house the same lighting as grassland doesn't look terribly pretty
fuck did i break now
wait is that the case in mvlo?
vic come back NOOOO
What happened??
17
Have you played mvlo
Or vanilla nsmb for that matter
....dude that's 6-1 🥹
choose another one
im not touching an already fine map 🙏
background overrides ground
so only the collisions from bg matter
but if i disable bg then ground gets cured from ligma
Oh most likely the background is using the ground's layer/tag
Change its properties until it's the same as in other levels and
yes to both
however I'm too lazy to check mvlo if it has the shader
You don't have to check in unity, I meant looking at it in game
stupid cutoff
reminds me of how i had to change the bg slightly in fboc because the ghost house one has the same ugly ass cutoff there
I'm not good at lining up stuff
Nothing except mario reacts to the lighting, and all maps have the same settings except from slight variations in volcano
i HAD to change that, that's why it's a feature in ezmod too
no no that bg was always like that its not your fault trust
oh wait are you talking about like lighting given to sprites?..
cause if so then neat
That and lighting being different across maps (darker in ghost house, or warmer in desert)
But anyway
you know im actually a bit surprised zomble doesnt know about this already when its something you can see in nsmbe
i even remember mentioning it before
i do know this though
I just thought you were talking about Mario having inaccurate lighting or something
Nah it's accurate alright, but the problem's source is og nsmb lol
higher budget higher quality they said
Oh my god please have my entire GitHub repo
mvlo in 2017
i kinda just felt like making a destroyed castle bit after adding the pillars
am i cooking or getting cooked 
Mmmaybe not on the platform area
It's supposed to feel "bottomless pit"-y
i mean if i push you off you still die to a bottomless pit
i see no difference chief 
Yeah obviously but I mean the visuals
...bawwwwwww i liked it so much thooo 😭
It's everywhere else thoughh
wdym
Like you only need to have less background decor at the platforms area
Where there's normal ground you can keep it
oh hell nahhh shut up
Credit Card
no fun allowed
damn right
Luigi broke 4th wall
i only want to say that the score thing looks goofy
i want to believe at least that the 123 thing is the score-
I'm not good at drawing stuff what can I say
Rose made a better icon but I didn't have time to replace it yet
what is her icon
She made multiple but the one I prefer is the podium one
is the decorationing going good? 😇
hi vic
just found out this has no effect on il2cpp builds (which in my case are the win64, android, and webgl ones) ughghghghhhhh
i lowk prefer the trophy but alr
That's the icon for "win count"
i kinda just got back home an hour ago and had to go to the bathroom for a long time 
That's ok
-# in all due honesty who really even cares about the win count at all
-# for a number that only serves to point out how much of a sweat you are or how much you suck when youre in a lobby with everyone having 2 wins and miibumm having 30 feeling all special like if he did something great and awesome 
Exactly why i like win count
What map is that?
rock pit
shiju found it first
i only made the rules so we could look better
ok so apparently snayp knew about this too so it's not new
that’s been a thing for years
looks like i'm late to the party
time to go to the bathroom
what vulgar process are you currently executing
I'm going to the bathroom!
ah i understand, however, what is the reasoning as to why you are currently not propelling your body at my general direction from above. i was made aware that that action is what your person is required to be committing.
perhaps i'll choose doing so at a later god foresaken moment.
insufficient, i am a god forsaken villainous opposition of yours and your purpose is to defeat me via gravity.
real quick btw
i’m pretty sure the original video got taken down
i am just now finding out
in that case, let it be that way. after i finish tidying up my attire, i will CONSIDER hopping at you.
damn i think it's true
ig the creator wasn't happy with it no more
personally i always go with the variant where they're poorly autotuned. it's more melodic https://www.youtube.com/watch?v=A9brSX54vho sometimes i forget this is not the original
hehe
im pretty sure the creator got exposed soooooooooooo
i was gonna change it but havent been able to since
if you have any ideas for replacement go ahead
So..
While you did say bottomless pit thingy blah blah
i want to keep the pillars 🥹
i want them to function as extremely risky but cool to use hiding spots
also i uhhh think i will blast those up there
they feel like a real ugly hiding spot tbh its quite hard to access unless you do it in a specific way
i kinda want to prevent shit that would end up feeling like going around the rock at 6-1 🦅
do you see this making any sense @reef narwhal
i have no one to rely on to judge on this help me lad
yeah
I like that you're avoiding having annoying to reach hiding spots..
yay
also so like since he told me to get rid of that part which had old destroyed castle shit i want to move it to be part of like some sort of cohesive world building
seeing how after this level 8-4 next level is 8-castle
Soooo... i could make the later half of the level more oriented towards it, probably...
especially at the end
also what do you think about the starting bit
for hide and seek spots, it's cool
much more interesting than a bunch of background terrain
gg
this is why im doing this
While i could just go the simple way, we gotta agree its ten times better having a decorated level with actual decoration
what i did for fcmi was better for just having something to play with, but here i want to make an actual experience
...hopefully vic does like, add the decoration as something separate
like a "Added decoration" effect or smth idfk
its too cool to not be used ✌️
mr vcmi better do that or he's gonna see angry and wicked zomble
Yeah the pillars do make sense...
Should the togol be on or off by default?
YIPEEEEEE
you know, i have no idea
that depends on you i guess
it would be cool if it was always active ngl but people like hating on things for being a certain way they dont like so.. 🦅
vic would you be down to test today to see how cool it is 🦅
might need the rest of the gang on ts
yes...
ok 🦅
i should prob get a couple of maps done then
ill se what can be done abt dis
seeing how today my vacations start....
yipee
vic am i taking this into a good direction
yeah man you're doing great
since this is more streamlined compared to the urge to be happy thing from fcmi i feel the need to make sure it's enjoyable and not ugly
I like the idea of doing "world building" with the themes and stuff and not just random shit I'd be doing
I don't know if there are more spots like this one somewhere
On other levels
But yeah i want to make sure hard to reach spots arent used as actual hiding spots for how ugly itd be
kk
are you gonna add some levels' gimmicks eventually 🦅
that question goes more for blockhop than this but itd be nice to know what would and what wouldnt come
-# also i kinda noticed that the background is a wee bit inaccurate
Literally planned that for the next version
Missing enemies, tiles, platforms, etc
mmmmmmmhmmhm...... Tasty
so do you have a scope of what you're adding or are ya js gona do all
Just do whatever I feel like lol
vibe
I don't "plan ahead", I don't "note down my ideas". i WING IT, and if nothing works I CANCEL the project
He WING Dinging IT
My mind's been jumping back to this lately... Does this happen with signals too? I assume this applies only within a frame, right? As in, if events with the same hash are sent during one frame they get skipped, but if it's a different frame they still get triggered. Also... It's pretty common for an event to have the same hash, right? For example if you have one with no parameters it would always be the same I assume...
The frame number and event id are always included in the hash. So if you have no parameters, then only one event will be executed per type per frame, even if you sent multiple
Also no, because signals are just function calls that you "subscribe" to
They fire immediately. Unlike events, are queued into a list an executed once the quantum loop exits for that unity frame
Ok good to know. The inclusion of the frame number is what makes the event unique across frames
Argh, then I don't understand how my one second timer signal simply stops after some time
Send code?
It's the same one I sent you last time, but the timer is in global instead of frame.user. remember how I told you I'd start with the smallest change and test it before going further? We'll I'm fairly certain today I encountered the problem again so that didn't seem to fix it
Ya, it should only exist between 0 and 60
OnSecondTicked?
Yeah, that one. At a certain point it will stop being called. I haven't been able to debug it further because I can't find a reliable way to replicate it
And it's not necessarily "after a set amount of time", I think. Like, it can work for 2, 3, 4 minutes. But suddenly you start another match and then it's gone. And never comes back
Get the replay?
Yeah, will do. I don't expect any of us to be able to see what's wrong without first trying to find the concrete moment it starts happening
Uhh, might? Iii
The thing is I started that match with it not working
Whereas the previous one was. Iirc
If it's broken even in the replay then it's some state that's broken
And the replay would mean you have a consistent way to reproduce it
If it's NOT broken in the replay, it means it's some non deterministic issue
ok, i'll check out my replays tomorrow. btw, is it easy to serialize a field you add to frame.user? should i just follow what StageTile does?
so apparently, if you set coin runners and grab enough coins to get a powerup, the game crashes
thanks. the issue seems to appear only if the timer is disabled, since it cannot determine the powerup chances when the time is zero
fixed!
Made the controls bigger and closer to the center
Also fixed the dark looking enemies on mobile
*W vic ❤️🩹*
ook here's an apk with the changes in case anyone wants to test it
if you have any suggestions to make the controls better do tell me...
theyre better but it would be even better if they were a little bigger and moved slightly downwards
Both the stick and the buttons?
is there a browser version?
Yes, vcmi is available for browsers
is there a bowser version?
Yes, vcmi features many of Bowser's miñons
is there a pouncer version?
No
fuck you vic :broken:
wow
rude
You're great vic 
aw thanks man
true
fcmi tomorrow
your game being fcmi? https://cdn.discordapp.com/emojis/1429579489884508310.webp?size=48&name=bruh~1
nah jk take your. time
vic's custom vcmi-inator
vic ngl i didnt think youd only take 2 of the palettes i made for you out of the 16 offered
not a bad thing cus i can use em myself but idk i just expected youd choose more
oh yeah. i'm not done with them. i was thinking which ones to replace from vanilla, if any (because some of them were too similar to yours), and got a bit impacient and never finished that task before the release
ah i see
hi vic
hello poobis
hii
why does it
also am i tripping or wasnt there a custom palette maker
what happened there
That's KKT Mod
oh thanks
what
found several bugs
when spectating, activating free cam (or just spectating normally) the text will be the placeholder: "ui.freecam" or smth like that
When playing the sewer map and doing several laps, if you have a powerup, there's a small chance you will get softlocked by clipping through the walls
i can't get footage, but I'll try to get a screen shot of the free cam thingy
Vic's custom match inator mobile ™