#General modding chat

1 messages · Page 8 of 1

near parcel
#

By doing that you are significantly reducing the time resolution of the physics, which obviously destroys its accuracy

warm canopy
#

It’s also been done before

shadow iris
scenic echo
#

How can you rotate custom objects?

regal bear
median cobalt
#

Does setphysicsspeed scale the internal tickrate (engine still running at normal tickrate) or the actual engine tickrate at its core

#

Ill need a proper answer from someone who knows

#

Cuz if it scales the physspeed with everything else like mod refresh rates it might be impossible to make a module im considering

shadow iris
#

so if you set physspeed to 50% mod timing wont be affected

near parcel
near parcel
shadow iris
#

oops, but does it really matter if i catch these errors because it isnt fatal and it would take extra code (L optimization) to catch them for something that needs to run as quick as possible

#

funny when it throws that error the scraps are actually cleaned up

#

i dont think its supposed to be called that many times but there arent any errors so i'll take i t!

#

oh wait its because of how i setup the skips

scenic echo
shadow iris
#

but it times at what would be the frame time of 60 fps

#

so if the server dips below that, that means it's lagging

#

but if it outright freezes then it doesn't detect

#

so its only good for comparatively small lag like repairing a big structure, spawning structures in build mode, respawning with a medium-large vehicle

#

and in those cases where it can detect, I can detect how far behind it is in milliseconds and do different stuff based on that

scenic echo
#

Does it detect when the server runs constantly at for example 50% speed?

shadow iris
#

for example if it lags at all, set the physics speed down depending on how much lag. if the frametime is more than 7ms higher than it should be, then delete all "scrap" structures and pause physics until lag stops

scenic echo
#

Nice

shadow iris
#

the issue with more complicated stuff like cleaning scrap is that the server still has to run that while it's lagging and most of the time, lag is a spike (e.g. calculating a collision) and not a constant thing

#

so it hardly affects things

#

but I think it might help for unstable servers where a lag spike could spiral into a bigger issue and eventually crash, ESPECIALLY on high player servers

#

because it so quickly responds to even small stutters

scenic echo
#

That's nice

shadow iris
#

I should probably update sensitive seats to run at 60hz because currently I think it runs at 10hz

#

and I still need to fix getting locked out of repairing in no repair tokens

near parcel
shadow iris
near parcel
#

Probably more than an if/pcall, I/O is slow

shadow iris
#

ah so not that bad but for a heavily optimized mod I might not want them. how performance heavy is it to leave in tm.os.log lines?

near parcel
#

Depends on how much data you try to log/how often

shadow iris
near parcel
#

That's probably fine

shadow iris
#

I might make a server benchmark thing with my new found ability to track performance. that could be interesting

#

like you say how many players you're going to host for and it runs for 30 minutes or something as soon as that player count is reached and then based on how many stutters and severity determines how good your server hosting is

#

although that assumes the server doesn't crash

near parcel
#

And that human behavior will be consistent and reproducible

regal bear
#

I've updated Track Creator Plus with new features and fixes. More Info:
#1242291936715608205 message

shadow iris
#

i still havent found what causes that error but now the logs are funnier

#

seems like it only triggers that error when the structure has a seat/anchorpin in it

#

so it might be the goto im using

#

yup! its that goto... but whyy

#

oh maybe when it gotos then it gets block again incorrectly

#

the errors magically went away after trying one of my old solutions a second time so i guess its fixed now

scenic echo
radiant lion
#

Vs code is by default on dark mode

scenic echo
radiant lion
#

Is your discord also in light mode?

scenic echo
#

Discord is just better in dark mode

#

The colors of names on white mode are really hard to read

topaz arrow
#

are colors in a float? or in some other weird ass number format?

shadow iris
#

(r, g, b) iirc or something similar

topaz arrow
# shadow iris rgb

no i mean the color R, color G and color B. how are they rounded, how many digits do they support, etc

shadow iris
topaz arrow
#

in the new version it gets rounded 0-1, but in the old one it didnt have such limits. rn im testing sth, but it isnt going well

topaz arrow
#

like new game version

#

the new update

cinder spruce
topaz arrow
#

huh? thats... not what i found. do floats lose bits that are used for digits if the exponent gets too big or too small?

near parcel
#

no, but floats are stored in scientific notation with limited precision for the mantissa

radiant lion
#

Anyone remembers what version of lua TM is running?

cinder spruce
#

Im pretty sure its lua 5.2

radiant lion
#

That could be an issue... I'll have to check tomorrow

near parcel
#

5.2

radiant lion
#

Damnit

#

String.pack and unpack, which as I gather are an extremely easy way to convert floats to bits are 5.3+

#

Cause supposedly moving the sign bit and the first one of the exponent at the end of the mantissa should be a working, simple option

#

That would cap the exponent at -1 making the largest possible number ~1 (with a mantissa of all one, basically 0.9...) and the smallest 0, exactly what we need

#

And losing 2 out of 23 mantissa bits is far from the worst

near parcel
#

you would need to move the first 3 bits (otherwise the largest number would be 1.99999...)

radiant lion
#

Why? 1.1111 is close to 2 yes, but to the power of 2^-1 makes it 1

#

01111111 in the mantissa should be -1 if I remember floats correctly

near parcel
#

because the mantissa for normalized numbers has an implicit 1. for extra precision (in scientific notation the mantissa always starts with a non-0 digit, but in binary that means the only possible value is 1 and thus there is no need to store it)

radiant lion
#

I know that much... The thing that's not matching up is the exponent

#

Why is 0111... 2^0 and not 2^-1

near parcel
#

the exponent is represented in biased form with a -127 constant, so 2^127 is actually 2^0 = 1

radiant lion
#

Agh, why

#

I thought it was using excess notation, what's this

#

Excess 128, the offset is 128....

near parcel
#

because that means half the exponents are positive and half are negative (0 exponent is reserved for subnormal numbers, and 255 exponent is for infinity/nan)

radiant lion
#

I guess I'll sub one from the exponent, that's still better than losing another bit

#

Assuming I get to decompose the float into bits

topaz arrow
#

is the coloring function still broken?

scenic echo
topaz arrow
cinder spruce
topaz arrow
#

well, then something is very wrong in my coloring function....crap

#

ah, found the issue. apparently, NaN cannot be used as a valid color value

#

ah yes, changing a secondary color of course makes the primary color green and gives me a red glow around the block....... what?

#

(im on an old version, i assume this is the "black hole" thingy that was fixed)

topaz arrow
#

ye, if not for the fact its supposed to just save the color normally 😭

shadow iris
#

is there a way to disconnect players without banning them? or is that what the kick function already does?

warm canopy
#

That’s what kick does (I think)

#

We are missing a ban by steamid and steamid get functions

shadow iris
#

i feel like a dynamic and automatically adjusting complexity limit would be both an amazing and terrible idea at the same time

#

is it possible to detect whether an individual block/structure is in build mode?

warm canopy
shadow iris
#

ideally because this is a performance/stability mod, i need this to run insanely quick

#

oh i wonder if gravity applies to build mode structures, cause maybe i can check velocity and if its perfectly 0 then dont remove

warm canopy
#

When someone enters build mode with a structure save the current structure data, then check it against all the players structures, the ones that don’t match the buildmode structures data get removed

shadow iris
warm canopy
#

Aren’t all blocks in buildmode considered one structure?

shadow iris
#

let me lay out what i'm trying to do and what the current issue is, i think thats unclear right now
i am trying to clean up structures that:

  • aren't in build mode
  • do not have a seat or anchor pin on board

the issue is that because unconnected blocks are treated as a separate structure and often don't have a seat/anchor, they get cleared, and make building in laggy conditions nearly impossible

warm canopy
#

The get all structures in build mode apparently gets more than 1

#

So it should be in theory just a simple comparison?

shadow iris
warm canopy
#

If the velocity works then that might faster

shadow iris
#

hey wait it might actually be working lol

warm canopy
#

Actually velocity won’t work because it requires player seated

shadow iris
#

oh wtf

#

devs why

warm canopy
#

I guess you could maybe cheese it by comparing rotation of the structure compared to the world, structures not in build mode are likely not to be exactly aligned with the axis like build mode

radiant lion
#

Btw, are you worried about all unconnected blocks or only the ones in build mode

#

Cause you could just... Not delete scrap when in build mode, do it once when they enter, then they as long as they stay in they won't make any more

shadow iris
shadow iris
radiant lion
#

I see

shadow iris
#

also i see complexity is not updated when blocks are disposed/destroyed in build mode

#

devs!!!

#

oh i wonder if forces (center of mass, thrust, that stuff) are updated

radiant lion
shadow iris
#

i might add 1x1 eyeballs to the list of "protected" blocks so that it has compatibility with custom missles mod

radiant lion
#

So rotation as terror suggested is probably for the best, X and y should never have decimal points in build mode

radiant lion
shadow iris
#

this should work right?

#

ofc use actual thing if [0] is wrong

#

which it probably is tbh

#

ye figured it out, it should be rotation.y right..?

#

now i spawn some scrap out in the world

radiant lion
#

Use .Forward

shadow iris
radiant lion
#

As in ModBlock.Forward()

#

Should be

#

Since get rotation is local will always return multiples of 90

#

Unless that was only blocks... Agh, I haven't modded in a while

shadow iris
#

hmm how would i detect the decimals

#

brain went bleh again

radiant lion
#

Module of 1, should be

#

So if n%1==0 should detect if the build is in build mode

#

Assuming ModStructure.GetRotation() works properly

shadow iris
#

it doesnt like me using goto but im gonna try it again anyway because 🖕

#

actually i dont need to but it would be more performant if that could be used

shadow iris
radiant lion
#

Great

shadow iris
#

im not sure whats going on with the modvector log values but it did what i wanted it to do so 👍
it is exactly intended

radiant lion
#

You never know how it is with mods anymore ¬_¬

shadow iris
#

the one with the ~=0 is the scraps on the ground

radiant lion
#

Comment still applies to every other mods

#

Mainly mine... :p

shadow iris
radiant lion
#

Not a clue

#

Ridicolas' block editor of just the missile mod (set to use another block then select an eye) should tell you

shadow iris
#

holy shit my block edit mod is RAGING

#

ah its because its doing loads of calculations on every structure and theres like 40 of them because of the plane

near parcel
shadow iris
#

hmm i just thought of a better way to calculate frametime

#

just count the time passed between updates rather than if +1 to a variable happened in a given timeframe

near parcel
#

what were you doing when this is a thing?

shadow iris
#

something very dumb tbh, but it did work well enough

#

LETS GO
I SOLVED LAG

#

Infinity server fps 🔥🔥🔥

shadow iris
regal bear
#

Nice work 🙂

shadow iris
shadow iris
#

i think the physspeed formula broke

#

im not sure how accurate these numbers are but i will try it in multiplayer

#

player joining seems to break this new measurement system

#

at one point it was like 62ms behind?

shadow iris
near parcel
shadow iris
#

@dusty pelican, @serene magnet has a boost thing going on

#

i have been informed you guys are collabing

dusty pelican
#

how do you make an invincible block mod

scenic echo
dusty pelican
#

wdym?

scenic echo
# dusty pelican wdym?

ModBlock.SetHealth(hp) isn't consistant, it sometimes works but most of the time it doesn't

scenic echo
dusty pelican
#

weird

radiant lion
#

@near parcel if i have a float like this 0 0....0 0....010 does it get converted to 0 or is there a chance it still works?

#

so exponent all 0, but not the mantissa (i am guessing i probably shouldn't do that, not to have some unexpected behaviour)

dusty pelican
dusty pelican
scenic echo
dusty pelican
#

what does that mean to be in build mode

scenic echo
dusty pelican
#

i did

near parcel
shadow iris
radiant lion
#

ok, this should have absolutely not been converted to 0

near parcel
#

post your code

radiant lion
#

just by looking at the code you should lsee that n2_5 is just n2 after being put into and taken out of a block

#

wait, no, little mess up

#

so they supposedly should be the same, same could be said for n3 and n4 which are just the two from before, but decompressed

#

yet they are not

#

(if using the mod go in build mode, select a block and put whatever value you want in the field, the top one is said value encoded and decoded, the bottom one is after getting put as block color)

#

any exponent of 01101100 or less of value seems to round everything down to 0

serene magnet
#

I've been summoned

near parcel
#

line 23 shouldn't be +127 instead of +126? If the numeric value has an exponent of 0, you should encode 127

radiant lion
#

so i tought

#

but like this it actually works

shadow iris
# serene magnet Huh?

horma wanted to do mariokart thing and i was like "oh antimatters doing stuff" and then i was informed that you are working with horma
oopsie

radiant lion
shadow iris
radiant lion
#

a couple mods used the block color to store data

#

before you could put any number and it worked, it stored a whole float, now it's clamped between 0 and 1

#

so we are working on a way to slightly compress a float so it fits in the 0-1 range

shadow iris
near parcel
#

no, only difference is that getdeltatime gives you the time between update calls (doesn't change within a single update call) while the other gives you the time since startup (updates within a single update call)

shadow iris
#

oh i see, it shouldn't matter too much because i am only ever comparing time once and at the very start of the update

radiant lion
#

ok, so... after more testing i can say... we are kinda scewed

#

the exponent has to stay between 01101100 and 01111111, extremes excluded

#

wich makes the range really shallow

#

time to lose more of the mantissa....

#

like, another 2 bits
also, for some reason the last few mantissa bits start to get unstable near the 01111111 range... so i am a bit worried

shadow iris
#

ah well the major collision had a big number so ill say that realtime method is good enough
im pretty sure unity pauses the stopwatch when lag occurs though because it should report maybe 1000ms if so

topaz arrow
shadow iris
radiant lion
#

we should sneak in their office at night and do it ourselves

topaz arrow
#

DIY?

#

You know, if it works it aint broken...

shadow iris
topaz arrow
shadow iris
radiant lion
#

it's on every block that doesn't have special features

#

so you canlculate exactly how often it works

shadow iris
#

ffs im having a hard time making singleplayer lag enough to trigger lag responses

radiant lion
shadow iris
#

(it needs to be >7ms but not pause unity's tracking of time, to trigger structure cleanup)

topaz arrow
# shadow iris 2.1) it feels like that because its true

worse yet, its the important part. who cares if i can or cant do vector operations, as long as i can read x,y,z and create a vector, ill be fine by rewriting it myself. but you cant rewrite setHealth() or SetColor() and shit

radiant lion
#

not with that attitude

topaz arrow
radiant lion
#

anyhow, thingy work now... at least it works about as well as i'd expect it to

near parcel
radiant lion
#

lost 5 mantissa bits :(

topaz arrow
# near parcel nowhere, the colors were clamped for a good reason

ok, so where can i start a petition to get a replacement for that? or anything else connected with the API that would actually help in mod creation? (also i think it could have been done better, or at least in a way which wouldnt break everything connected with saving data to blocks via colors)

near parcel
#

^

radiant lion
near parcel
radiant lion
#

they didn't expect us to use color for that in the first place

topaz arrow
radiant lion
#

a man can hope

topaz arrow
shadow iris
#

this is working amazingly omg

near parcel
topaz arrow
near parcel
#

anything outside of [0, 1] is an invalid color

radiant lion
#

honestly i do believe most invalid colors probably didn't cause that, but without having one of such cursed blocks and doing some testing in 2.0 it can't be said, this was the fastest solution without doing that

topaz arrow
topaz arrow
near parcel
topaz arrow
#

if the idea was to fix invalid colors, it should have said so, and it shouldnt have mentioned the look of those

near parcel
#

fixing all invalid colors was the only way to fix the crazy colors without a very expensive investigation

topaz arrow
#

very expensive investigation
the investigation in question: check the blueprints with weird colors, see what those used, limit around that.
i feel that i should say, that i get trying to just fix bugs like that (at least somewhat, since i also find a lot of bugs cool), but since a big part of the modding api is not working properly, then any action that takes away the ability of modders to do stuff feels like an attempted assasination of modding as a whole.

and this [#1196793172429394050 message] just seems... like an awful way to go. sure, getting more assets is very much welcome, but i dont think thats what the focus should be on. idk, it just gives me a very bad impression, i dont know how else to put it

near parcel
#

the investigation in question: check the blueprints with weird colors, see what those used, limit around that.
then it becomes a game of whack-a-mole as new problematic values are discovered. If you want to avoid that, you either need to fix all undefined behavior or go in a rabbit hole to figure out what exactly causes the issue, probably deep within unity's render pipeline, and that's very expensive

but since a big part of the modding api is not working properly, then any action that takes away the ability of modders to do stuff feels like an attempted assasination of modding as a whole.
blame the people who want to ruin everyones fun for that

and this [⁠modding⁠Requests for spawnables objects] just seems... like an awful way to go. sure, getting more assets is very much welcome, but i dont think thats what the focus should be on. idk, it just gives me a very bad impression, i dont know how else to put it
adding more assets is relatively cheap on development, as they are already made for the game

shadow iris
shadow iris
# near parcel > the investigation in question: check the blueprints with weird colors, see wha...

adding more assets is relatively cheap on development, as they are already made for the game
adding onto this, it is most likely easier to add and test new prefabs- which already use a well established system- than making a whole new system, testing edge cases and whatnot, fixing those, repeat, all while working on a big update of their own. modding is only available for pc-steam and the rest of the game is available for everyone, it's not going to have the same effort put into it

topaz arrow
shadow iris
warm canopy
#

Modding api does seriously need looking into when devs get time. Hasn’t moved forward in probably a year and in some cases some functions are now broken that originally worked.

shadow iris
#

this aged like milk

cinder spruce
#

do we have a modding bug reports thread? i kinda feel like any that do pop up just end up buried in #bug-reports or not even reported due to how little the API has been touched.

shadow iris
regal bear
shadow iris
#

let's get a central gigantic list of every bug and very major missing thing for Flashbulb "Mr. Modder Developer" Frans

formal crane
#

I made "Bug report" tag for both #1126842222898315274 and #1123915629653667943

formal crane
#

#1123915629653667943 would be best place as it will be the main place we review when task planning.

shadow iris
formal crane
#

When you want to keep a bug and discuss it :p

EDIT: I'll delete the tag haha

shadow iris
cinder spruce
#

i'd say keep it on separate posts, a single thread might get cluttered by conversations and what would be the point of making the tag in the first place?

shadow iris
formal crane
#

It is a good question and I don't have any good answers!

I think if they are collected nicely in a list it is a little more chewable for management to see the scope of needs.

Listed into "critical", "nice to have", etc. could make it also better as we could see what to prioritise.

Categorising them into "assets", "sounds", etc. it not really needed. Just how much people want it fixed.

shadow iris
#

oh, and

where do prefab object bugs go? these might be different than api bugs

cinder spruce
#

ok maybe its time to actually gather up every issue in one spot

formal crane
#

I think broken prefabs deserves its own list with pictures or similiar.

shadow iris
scenic echo
formal crane
shadow iris
# formal crane Yes 🙂

I think that concludes my question and concerns for today. I'll say this for all of us, thank you for giving the future of modding a sense of direction. good night!

#

heyy when was this added...

formal crane
#

Modding is hard for us to measure success in. So it is scary to invest money into.

But yeah, for now it is words on my side... There is just very little time and the people who knows how to work with modding in Trailmakers just have very little time to do so.

This week I am onboarding a few new-ish employees to expand the knowledge a little.

formal crane
shadow iris
cinder spruce
#

i don't know how often johannes checks the modding channel of all places xd

regal bear
shadow iris
# formal crane I think broken prefabs deserves its own list with pictures or similiar.

what is the case for broken prefabs in ways like broken functionality? should special functionality glitches go in its own thread?
for examples,

  • PFB_Runner-Monkey's explosion immediately plays when the prefab is spawned (he still functions just fine afterwards though :D)
  • Explosive salvage are converted to regular salvage
  • PFB_Barrel and PFB_ExplosiveBarrel cannot be fully despawned
  • PFB_RingofFire particle and light source positions aren't scaled correctly
shadow iris
shadow iris
#

there is no way to remove an individual block from a structure in build mode. this means i cannot mod in a banned blocks system that runs within build mode. i am unhappy now.
@dusty pelican are you hearing this

dusty pelican
#

it's not clean but it would do the trick

shadow iris
dusty pelican
#

do you have any better ideas

shadow iris
#

being really angry and exploding them or killing them (killplayer function barely works lol) after 5s out of build mode

dusty pelican
#

oh

scenic echo
shadow iris
#

actually

#

block ban and block lock

#

block ban is like the host option

#

block lock hides it like in stranded

scenic echo
shadow iris
#

hey also might as well add a whole UI engine and preset ui tools like unlock block pop-up like stranded or the campaign finish screens

#

custom minimap and checkpoints too why not

#

yk just give us everything ngl

#

new employees gotta lock tf in fr

shadow iris
topaz arrow
formal crane
formal crane
formal crane
shadow iris
# formal crane Still just broken prefabs.

I remember at some point prefabs were being pictured for something on the wiki. that was all manual right? should I make a mod to setup the prefabs, the camera, and a background automatically?

shadow iris
# formal crane Personal vote on this one 😉

I believe in you, you can do it!
-# although I would prioritize making the stuff we have actually work... spawnables, while they are cool, aren't many of our priorities- and I'm saying that as a map maker

shadow iris
# formal crane None at the moment. But talks are still ongoing.

pitch to them that if we were given proper map making tools or assets (for example: surface properties/wheel-grip, cliff overhangs like stranded and rally, heightmap input ||(I heard that the game actually uses a heightmap texture and just generates a terrain for it (this would explain grid like cliffs on diagonals and why stranded uses an extra separate model on top of caves))||, world-space(?) tiling and blending ||(like high seas, airborne, space sector rock spawnables)||) that we very well could make maps that are on par or surpassing dev quality, and all that's needed from you guys is the tools to be made for us, and the maps roll in

#

free, (in theory) high quality content which could very well surpass flashbulb's own work

#

and the (PC steam) community is very happy with all the extra content they can play and (with a lower bar to entry) create. there is potential for a lot more content about tm- playing new maps, tutorials/guides for it

#

MapMakers2025 would be absolutely cracked with these tools

#

I'm definitely not biased as a map maker trust me bro
but seriously I have some ideas, like that offroad checkpoint campaign, which could actually be made possible at all with these tools. even just surface properties and better mesh/texture importing would go a long way

#

it seems like a decent system to have a texture for the terrain shape (idk about the surface properties though...) and then use Trailmappers for the prefabs
I suppose we would also need water and sea floor customization for that- but that is more fit for #1123915629653667943

scenic echo
#

I wonder how hard it is to make a trackmania nation forever track in trailmakers

formal crane
formal crane
shadow iris
shadow iris
#

is updating the terrain/heightmap in the context of a mod possible? if it is possible, then I'd guess that it's out of the scope for pvp pt2's modding time

paper bone
formal crane
formal crane
#

and maybe some other things, nothing grand, maybe some fixes 🙂

formal crane
radiant lion
# shadow iris is updating the terrain/heightmap in the context of a mod possible? if it is pos...

Honestly as long as we have the power of making tris (technically not required) and changing material that would already be plenty to make custom height maps (tho vanilla terrain will still exist and you'll can't directly use TM textures).
I am considering making new terrain virtually identical if not better than editing the existing one, after all all the objects on normal maps will stay, so placing new terrain elsewhere is likely better.
That is assuming trailmapper adds a tool for it, which could allow to paint terrain with materials, create a whole texture with given material textures, ecc..

paper bone
shadow iris
shadow iris
shadow iris
formal crane
cinder spruce
#

hey uh,
if we actually do end up wanting stuff to be fixed in the modding API, we do actually have to make some reports on stuff. I personally am not too well versed in lua or working with this API, probably enough to figure out what's wrong with certain things. so if we do actually want to expect something soon we should really start now.0

shadow iris
#

at some point ill do a report for KillPlayer()

shadow iris
#

oh god did i just discover the cause of the KillPlayer() bug. if so i HATE that

#

i HATE that

#

NOO ITS ACTUALLY REAL

#

OH GOD

shadow iris
# regal bear do tell

players are marked as invincible if theyre in an "enclosed" seat (gokart isn't enclosed, armored seat is)

regal bear
#

ah I see

shadow iris
#

lemme test if this is consistent with my mods

#

@scenic echo i figured out why KillPlayer sometimes doesnt work and i hate it

regal bear
#

So you'd have to destroy the seat first I guess

shadow iris
scenic echo
scenic echo
scenic echo
shadow iris
#

highest votes is priority

midnight grotto
#

I get that its the steepness of the terrain that determines whether there's grass or dirt/rock. But how come it's so different from Trailmappers to Trailmakers?

shadow iris
midnight grotto
#

No quick fix then. Oh well. Thanks for explaining. ^^

shadow iris
midnight grotto
#

Thank you! I feel like I have to hold back on the details so it doesn't start chugging. I really have no idea where the limit would be. I assume plants and trees are the most taxing assets?

shadow iris
#

besides that you really can go crazy

midnight grotto
#

Oh, that's promising. I guess I'll just keep building, and then I can extra details at the end.

scenic echo
#

can you move spawned blueprints with the modding api?

radiant lion
#

Yes by add force, no by set position

topaz arrow
radiant lion
#

"ModObject.Exists()" seems to always return true... either that or both "ModObject.Despawn()" and "tm.physics.DespawnObject(GameObject)" aren't doing a good enough job

shadow iris
#

i wonder if i can make a mod that forces the player out of build mode

#

to bandaid fix bugs which softlock you in build mode

#

for example this one

scenic echo
shadow iris
#

the issue is that build mode is active while the cinematic camera is

#

so i get locked in a hybrid in/out of build mode state

#

thus

#

exit build mode by force

scenic echo
shadow iris
#

the second i stop playing it becomes super close istg
im actually op

#

rahh

#

the 6 player lobby is having a great time

#

i cant close server

#

im trapped here

#

save me

#

get me out

#

let me out

#

set me free

#

i know all the secrets you keep

#

i

#

i wont be

#

i wont be your casualty

scenic echo
#

you shall be in the prison, created by you, for eternity

shadow iris
radiant lion
#

just enable the missile mod, i heard it can solve such issues

shadow iris
#

🔥

radiant lion
#

yeah

shadow iris
#

i should try that

radiant lion
#

freedom

shadow iris
#

i should set physics speed to 1000%

#

boom

#

"oh guys i accidentally enabled a broken mod i was working on"

#

IM FREE

#

@sharp lantern SET ME FREE

#

"now restart"

#

THANK YOU BRO 🙏🙏🙏

#

time to work on force out of build mode mod

scenic echo
midnight grotto
#

Making a large island with lots of dried up river beds to drive and crawl inn. Will be done in 3-5 business years.

shadow iris
midnight grotto
#

It sort of is, yeah. It's still kinda fun, but you do slide and bounce around a bit. I'm gonna continue making this, but it honestly might just be shite. At least until they decide to update the game with better wheel physics.

worn moss
#

would someone be so kind and do the "SPA" racetrack map? pretty please

shadow iris
#

i desperately need deleting pfb/map objects right now- bro wtf is THIS 😭😭😭😭

formal crane
shadow iris
#

ah not a bug but certainly quality of life. update block statistics like weight and aerodynamics live based on the blocks actual values

#

that and getdragall

#

gotta remember that for the afternoon

radiant lion
#

While Frans is here I'll mention, if you haven't marked it yet, setColorSecondary not working on any "special" block (any with inputs it seems), and colorPrimary possibly not working at all, but I'd need to do some testing before I can give a concrete reason

shadow iris
regal bear
formal crane
#

And if you can help us confirm that they still exist + great reproduction (Eg. mod included with steps to reproduce) then that's going to increase the chances of it getting fixed.

Modding QA is extremely hard as we solely depend on Programmers having extra time to test everything thoroughly + you guys. But in reality.. You are the ones who are using the to great degree, so you will have much better sense than we have time to at the moment.

#

Reporting the bugs in async chat is also hell. There is no way to find things again + I don't sit and stare at this thread all day and log every bug.

So that's why we are trying to get a little bit order and put things into individual threads. It will be much easier to point and link to individual bugs and discuss them.

formal crane
#

Just did a pass to start this;

Has Thread

  • AddUILabel (among other UI elements) with +82 characters (or something like that) crashes the session (Frans)
  • PFB_BlockHunt (the blue beacon) spawns with a horrible constant synthetic sound which is unbearable once you spawn a number of them close together. It also spawns with a weird angled yellow ring which it never used to have.
  • KillPlayer does not work after some time [Discord](#1370539379260522516 message)
  • Spawning any explosives causes crashes with late join [Discord](#1368997534307057785 message)
  • Custom cameras do not work when player's vehicle camera is set to orbit or sticky orbit [discord](#1371929672228798504 message)
  • SetHealth is not reliant [Discord](#1368999049188872204 message)

Missing Thread / Reproducible steps

  • PFB_Barrrel does not always despawn [discord](#1140936220487192587 message)
  • SetIsTrigger removes hit box collisions but does not remove raycast collisions [discord](#1140936220487192587 message)
  • Updating UI element for 10 minutes crashes the game [Discord](#1361406446612381757 message)
  • Changing drag makes the game bug out [Discord](#1140936220487192587 message)

Very unclear details

  • SetIsTrigger does nothing [discord](#1140936220487192587 message)
  • Mesh Import discards vertices? LOD issues? [Discord](#1226065444364877835 message)
#

.
I can also let you know one of our project managers recently messaged me and asked for a prioritised list of modding wish list. Hence why I am pushing for your help lately 🙂

cinder spruce
formal crane
#

Cheers, changed link and moved it

topaz arrow
radiant lion
#

tho for now i'm only able to say that the barrel not despawning is likely tied to how the game handles the prefab, expecially with the explosive barrel that respawns when blown up (and i think normal when far away), don't have inside info so i can't say if it's just despawning the spawner, if there even is one, or similar

formal crane
formal crane
shadow iris
# formal crane Cheers, changed link and moved it

im not sure whether this is a bug or intended but the session option for player invulnerability completely overrides the mod based toggles. if this were to be fixed I think the best solution would be to have mods override the session option and maybe to also add functions to modify such session options

shadow iris
#

can someone help test weight/mass of custom models? seems to barely affect the object.

this example is from a drop of 100 units.
0 vs 100000 mass (via tm.physics.SpawnCustomObjectRigidbody)

#

i would expect an object with 500000kg of weight to fall a bit faster than an object with 0kg(?) of weight and be noticeably harder to push than the 0kg one

midnight grotto
#

Higher mass would be able to push through the atmosphere easier than an identical object of less mass.

shadow iris
near parcel
shadow iris
#

and they feel about the same to push

near parcel
#

The only thing that should be higher is terminal speed, not acceleration

shadow iris
formal crane
shadow iris
# formal crane Just did a pass to start this; ## Has Thread - AddUILabel (among other UI eleme...

regarding mesh import issues: discarded faces happens when there are more than 32767 faces I think. there was also some corruption bugs with very high complexity models where semi random vertices get connected and cause massively incorrect triangles (something above 100k vertices)

I need to do some testing again because I forgot whether it was faces or vertices that were capped. it's probably faces?

shadow iris
#

and no matter how heavy I make it, I can't get an object to act the same as a default shipping container prefab

shadow iris
# formal crane . I can also let you know one of our project managers recently messaged me and a...

from memory, in order of most to least wanted:

  • A chance for our hopes and dreams to not be mercilessly shattered
  • Function fixes (e.g. KillPlayer issues, "color issues", etc...)
  • Custom asset importing optimizations
    • Models and textures import painfully slowly and especially in multiplayer
  • Improved custom model collision with wheel visual deformation and entering build mode or repairing
  • Transparent custom textures
  • Custom model surface properties like grass/mud/sand/snow (how would this be done? a texture?)
  • Mod UI update (hey Frans I think you might know this one already)
  • More extensive block modification function set
    • Things like setting powercore count
    • Control server-wide block bans and block unlock state
      • Block unlock state: whether a block is available at all, like how blocks are missing in the builder before unlocked in Stranded
    • Live updating statistics like weight and aerodynamic displays
      • Things like weight values ||(per block and total structure weight)|| and COG aren't changed when a block is modified
    • Per-player block bans and block unlock state
    • Low priority: getdrag function. the only use cases I can come up with are for the wiki and for random little aerodynamics edits for racing or something
  • More control over player input and menus
    • Forcing a player to enter/exit build mode
    • Forcing cursor unlock state
    • etc... (need further research)
  • Graphics controls
    • Fog start/end
    • Fog color (how would this work with sky colors though?)
    • Render distance
      • Toggle in settings whether mods can control render distance (for low-end users)
    • Post processing
      • Things that the cinematic camera feature can already edit
        • DOF
    • Water surface opacity/color/target height
    • Underwater fog start/end/color
    • Sky type (Pioneers, High Seas, Space Sector, Airborne, Classic)
    • Sky top/horizon colors
  • Spawnable bug fixes
  • New spawnables
  • Normal/specular/metallic(?) maps for custom textures
#

People, let me know if I missed anything (I sure did) and if I got priorities wrong or anything. I've tried to be unbiased but my list might be slightly biased towards mapmaking

#

oh, we can't actually get drag values from blocks. it doesn't have a very real use case but it could be used for wiki numbers I guess? that's kinda low priority tbh

#

damnit I ran out of characters because of no nitro

#

alright ive actually ran out of characters for the starter list, that's a great sign

shadow iris
#

there are a couple small things I can't add due to message length limit but one of them is for graphics control: ambient light color/brightness (like how dark caves on Stranded make the ambient light basically 0)

formal crane
#

Mostly that it is absolutely humongous especially considering the resources we have available :p

Priorities perhaps?

shadow iris
#

there's a lot... and I think the mapmaker bias crept in a little- my bad

formal crane
#

ah :v Well, maybe we need more people to vouch their thoughts 🙂

shadow iris
#

I've heard from talking in general land (im not schizophrenic trust) that modding is cool but people don't know where they can put their thoughts on what should be added updated

#

so I think perhaps maybe even tapping outside of the modding circle could be really useful

formal crane
shadow iris
#

I think the console players spoke up mainly when I talked about the state of disrepair that modding was in

shadow iris
#

AJ would be a good person to talk to about this if he's online at this hour he is very keen on getting a list going

near parcel
shadow iris
#

or maybe a crane

warm canopy
#

The backlog is so big with modding now, I think the worry is that when will the next time modding get an update after this planned as if we are talking atleast a year again then different things are more priority than others.

formal crane
#

<@&1123912996406706277>
We just had a little chat; and moving forward with the next update cycle we will go for more healthiness in terms of the current Modding API.

Bug fixes will be prioritises - but to do so we need good reproducible cases and detail information. If (big if!) we have more time, we will reach out about our thoughts on what we can otherwise implement. But right now we see it more fitting fixing the current functionality such that it is reliable for you modders to use.

Please see the following list of our bug list, and help us expand it, make threads with information - I will keep it updated so you can follow along a little. This is not a list of what is being worked on, but rather a list of things we should investigate and move forward with.
#1140936220487192587 message

Let me know how this works 🛠️

scenic echo
scenic echo
radiant lion
#

meanwhile set color seems to be a lot more unreliable then expected

regal bear
radiant lion
#

after some bug testing... i'm more confused than before... some values (like "SetPrimaryColor(0.204,0.7411,0.224)") just don't work, ever, so there seem to be 2 bugs about colros (more details soon... hopefully)

formal crane
#

Are you declaring the values as seperate values, our inserting them directly in SetPrimaryColor?

Eg

local r = 0.204
local g = 0.7411
local b = 0.224
SetPrimaryColor(r,g,b)

vs

SetPrimaryColor(0.204,0.7411,0.224)

And does it make a difference? I have encountered a few oddities in MoonSharp here as it would make some wrong assumptions about input parameters/overload functions.

scenic echo
formal crane
radiant lion
formal crane
#

The internally function looks so naive so will have to do a deep dive on this one later...

#

Again, if you have a nice and simple little script to test it. I am fine with spamming a button until it happens. But from the sounds of it, it is specific values that dont get saved?

warm canopy
#

Itd be easier at this rate to just have something save values into the blueprint file lol

radiant lion
#

really wish i could say more about this part, but i'm so confused, the only ones that seem to reliably work are black and white

formal crane
#

@warm canopy We considered our options yes. But for now. No new stuff 😉

But it is much more complicated to save data to blueprints via new APIs. (But the last clamping talk, did spawn a bunch of brainstorming)

radiant lion
#

why is all working properly now....

#

ok, no, it's not..., at least, not primary, but secondary works

#

imma go make a thread...

median cobalt
#

Probably just a broken persistance or too agressive GBC

#

(GarBage Collection)

formal crane
#

Feel free to write in there for this specific bug if you have more insights

median cobalt
#

Aye will do

radiant lion
near parcel
formal crane
#

The example I gave was non-related, thinking of it, and not applicable in what I am talking about here.

near parcel
scenic echo
regal bear
shadow iris
#

can someone help test salvage spawnable collision issues? seems like some of them sink into the ground

#

this issue has been around for years at this point iirc

#

and now its stopped..?

formal crane
viral onyx
#

hi guys, im new here, how do i mod sounds and is it even possible at the first place?

radiant lion
#

you can play sounds, but not custom ones

#

only some taken from the game

viral onyx
#

or just replace the mp3 with a mute mp3 indiana jones style

radiant lion
#

As far as I know no... At least not via the official modding

#

I know there are some tools to replace textures and probably also sounds, but those are technically against the EULA, so can't really help

formal crane
#

Really appreicated all the work so far with the bug reports. Very helpful. I'll do a pass later today.

warm canopy
#

In terms of the most useful things added in the past, I think the subtlemessage functionality is probably way up their. So if you get time, UI related functions are incredibly useful (e.g The title text (seen in space))

formal crane
#

Yeah I agree. I think there are some small wins to be have had there; I generally support any kind of feedback to the player. Super useful for gamemodes.

Same with player event feed and proper dialogue system access.

warm canopy
#

Yup, they go along way to making mods feel less clunky

formal crane
#

But yeah, this modding release cycle will be focused on bug fixes as said.

Maybe a few functionalities will come out from fixing said bugs.

warm canopy
#

I dont think theirs that many bugs in the grand-scheme of things. Most notable being the explosions prefab causing a crash on players joining whilst spawned, the invincible not overriding the server setting and probably the colour issues that Jess has

formal crane
#

Let see how it looks at the other side, I can't push for more at the moment.

radiant lion
formal crane
#

Personally the Set Health stuff is also making me cringe, I think there is a few more of these cases where things are just way too unreliable or requires some kind of weird tribal knowledge to circumvent some non-descriptive behaviour.

Things should be just straightforward.

warm canopy
#

Set Health has always been weird because it also doesnt affect the strength of the welds

serene magnet
#

Posted it in general chat and got ignored so figured this may be a better place. Eventually gonna make it all work but I wanted to try my hand at a semi botnak themed turret

#

If anyone has any ideas/suggestions please lemme know. Preferably before I start trying to program animations

paper bone
#

Would be funny if it would only shoot at builds that dont have the majority of their blocks painted yellow.

#

Omg i have THE idea: use actual projectiles.
Save a blueprint of a single pipe or something like that and spawn them with a massive force.

shadow iris
serene magnet
#

i wanna try and make a feedback system between blueprints and mods to see if i can make it so you can shut down the turret with an EMP

dapper jay
paper bone
#

Oh oooof

dapper jay
#

yeah

dapper jay
#

my first idea was to add stuff to tm, but thats blocked

#

and idk if its shared between mods anyway

warm canopy
#

No its not

dapper jay
#

rip

near parcel
#

each mod runs on a different sandbox

#

closest thing are hacks like spawning objects and measuring them with raycasts

warm canopy
#

Itd be nice to have some way but nothing right now unless you do some really janky way by having one mod look for objects

near parcel
#

why would you need mods to communicate between eachother? Only thing i can think of are dependencies, but a dependency manager that bundles different mods into a single package would be better for that

dapper jay
#

you could have a mod that implements a projectile system and other ones just use the functions that it exposes

near parcel
#

that's what dependencies are for (specially when they are required for the mod to function rather than optional)

warm canopy
#

I wish we had some way of communicating to a db that you could then pull from with a different mod.

dapper jay
#

we dont have that either 👍

near parcel
#

https://xyproblem.info/ then you should ask for what you actually want, not something you think might solve your problem

dapper jay
# near parcel that's what dependencies are for (specially when they are required for the mod t...

The dependency mod would only exist in my mod env, right?
Lets say i make a mod for spawning bouncy balls that can have rules for what they bounce off of, and this mod can be used by other mods

If i want to make it so that my red bouncy balls only bounce off of other red balls, it would all work just fine with the balls spawned by my mod, but what if another mod spawns red balls? There would be 2 instances of the balls mod running and they wouldnt know of the balls spawned by the other instance

#

Thats why it would be cool to have it as a central thing instead, it gets loaded like a normal mod and exposes some api for other mods to use

near parcel
dapper jay
#

so it would be loaded as it's own mod with it's own env

#

if so, how do i interact with it lol

#

theres no way to do that currently

shadow iris
#

i dont remember pipethruhill having LODs 👀

shadow iris
#

interesting

#

the same bug has happened with id 3

formal crane
shadow iris
#

seems like a somewhat rare bug but it did happen twice or thrice in about 1-2 hours of hosting. it stops after other things are triggered in the update function

formal crane
#

What you mean by other things?

shadow iris
# formal crane What you mean by other things?

in my update function it checks how far behind the server is running. if it's above 1ms it'll log the server frametime. if it's above a certain higher threshold it'll log again and clear unused/scrap structures and log the results. I'm guessing itd be something with logging because it only stops when either thing gets triggered and logs

#

I'll send the lua file asap as I can't explain it well from mobile

scenic echo
radiant lion
#

It seems you tried to do set position of something that isn't an object

#

Likely something that was an object but now deleted

formal crane
#

Might be a user error, but just wanna flag it... Don't hold back with the reports.

warm canopy
#

Not sure if this is bug but register keydown callbacks doesnt always work and ive found I have to have a few seconds of delay before registering for the host to load in

#

I feel like its become more of an issue with later updates

shadow iris
scenic echo
scenic echo
shadow iris
formal crane
#

Made a new thread for the whole Modding Resurgency 🙂
https://discord.com/channels/296562030624899072/1374687311538814986

It is worth noting that I am not only asking for bugs. But could also be Quality of life things.. Eg. weird Up vectors missing from classes. This is a little vague for now, but anything that seems small and would make your life easier.

I'll keep most of this discussion in that thread now. And then general modding discussion can continue here. I'll keep track of both to the best of my ability, but don't hesitate to ping me!

formal crane
#

Heya, any chance you could make a thread for this one? 🙂
Maybe someone else can help with making mod with reproducible case.

scenic echo
#

making the character 95% the original size or lower makes him fly, i'm gonna make a thread about this bug

warm canopy
#

Its always been the case (atleast since several updates), hence why in my server utilities mod I dont allow going below 1

cinder spruce
scenic echo
#

it would be definitely cool if we could make the character smaller for miniatures

radiant lion
#

On one side it would be cool, on the other if the Devs have to spend time on this instead of other stuff it's not really worthed

#

Which reminds me, a bunch of assets (lava, pipes and some flowers) when scaled exactly to 1 they are actually scaled way bigger (bigger than both 1.1 and 0.9) tho it's quite inconsequential, and having to handle scale differently for every object would be a pain

warm canopy
#

I think the last time smaller scales worked for the character properly was somewhere around 1.5

formal crane
radiant lion
#

That's fine, it's a lot less work for us to set the scale to ~1 than for you to go fix the scale on all the objects on all the maps

formal crane
#

Usually we have a lot of discussing on whether.. Should we fix things and break everything that compensates for said broken thing.

Or, keep compatibility and increase implementation complexity, usually resulting in more inconsistent behaviour.

shadow iris
formal crane
#

Mostly just uphill battle with mappers as they would have to go through and fix them in their maps 🙂

radiant lion
#

As of now trailmapper fixes it already, everything scaled to exactly one gets scales to 0.0001 so the scale stays linear

#

So, if the scale 1 gets scaled down to how it's supposed to then nothing changes, if every other scale is scaled up to match then everything will need an update

formal crane
#

Yeah, but every old map would have to be opened in trailmapper to update the scale.

radiant lion
#

With the second fix yes, first one no

near parcel
#

First one technically yes, but the change should be too small to notice

shadow iris
#

it would be cool if we could have keybind glyphs in strings ngl

regal bear
formal crane
warm canopy
#

Sprite index is awesome btw, fitting that code in a subtle message isnt 😛

#

I dream of more ui functionality one day johannespray

near parcel
warm canopy
#

Yup 😐

#

Controller Xbox:

1 = B
2 = X
3 = Y
4 = LB
5 = RB
6 = LT
7 = RT
8 = DPAD
9 = DPAD UP
10 = DPAD RIGHT
11 = DPAD DOWN
12 = DPAD LEFT
13 = MENU
14 = SWAP SCREEN
15 = XBOX BUTTON
16 = LEFT STICK
17 = LEFT STICK UP
18 = LEFT STICK RIGHT
19 = LEFT STICK DOWN
20 = LEFT STICK LEFT
21 = LEFT STICK PRESS
22 = RIGHT STICK
23 = RIGHT STICK UP
24 = RIGHT STICK RIGHT
25 = RIGHT STICK DOWN
26 = RIGHT STICK LEFT
27 = RIGHT STICK PRESS
55 = A
56 = B
57 = X
58 = Y
59 = LB
60 = RB
61 = LT
62 = LT + RT
63 = RT

Controller Playstation:

33 = L1
34 = R1
35 = L2
36 = R2
37 = OPTIONS BUTTON
38 = LEFT STICK
39 = RIGHT STICK
40 = O
41 = X
42 = Square
43 = Triangle
44 = DPAD UP
45 = DPAD RIGHT
46 = DPAD DOWN
47 = DPAD LEFT
48 = ALL DPAD
49 = TOUCHPAD

113 = TOUCHPAD

Additional Controller Buttons:

64 = L1
65 = R1
66 = L2
67 = L2 + R2
68 = R2
69 = DPAD
70 = DPAD UP
71 = DPAD RIGHT
72 = DPAD DOWN
73 = DPAD LEFT
74 = MENU BUTTON
75 = SWAP SCREEN
76 = XBOX BUTTON
77 = OPTIONS BUTTON
78 = LEFT STICK
79 = RIGHT STICK
80 = LEFT STICK
81 = LEFT STICK UP
82 = LEFT STICK RIGHT
83 = LEFT STICK DOWN
84 = LEFT STICK LEFT
85 = LEFT STICK PRESS
88 = Circle
89 = X
90 = Square
91 = Triangle
92 = RIGHT STICK
93 = RIGHT STICK UP
94 = RIGHT STICK RIGHT
95 = RIGHT STICK DOWN
96 = RIGHT STICK LEFT
97 = RIGHT STICK PRESS
100 = DPAD UP
101 = DPAD RIGHT
102 = DPAD DOWN
103 = DPAD LEFT
104 = ALL DPAD
114 = L1
115 = R1
116 = L2
117 = R2

Mouse:

28 = Mouse
29 = Left Button Click
30 = Middle Mouse Button
31 = Right Button Click
32 = Arrow Keys
33 = ALL DPAD
106 = Mouse
106 = Left Button Click
107 = Middle Mouse Button
108 = Right Button Click
109 =

Keyboard:

98 = UP ARROW
99 = DOWN ARROW
112 = LEFT ARROW
119 = DELETE
120 = B
122 = RIGHT ARROW
153 = A

Other :

50 = No Access
51 = Caution
52 = Alert
53 = XP
54 = Coin
86 = No Access
87 = Caution
109 = Black Square
110 = Black Rectangle
111 = Slightly Longer Black Rectangle
112 = Small Alert
121 = No Access

near parcel
#

(this should be added to the wiki)

warm canopy
#

Man theirs 100+ sprite ids. Not sure if I've got the stamina LaughingDog

near parcel
#

it probably can be distributed between a couple people ||(or the frans could give us the list since they probably already have it)||

scenic echo
warm canopy
#

Just copy and paste the sprite id into the games username field

scenic echo
warm canopy
#

?

#

Damn theirs alot of duplicates

paper bone
#

tm.playerUI.AddSubtleMessageForPlayer(playerId, "FreeCam", "Press <sprite index=1> to toggle Free Camera!", 10)

radiant lion
#

Ironic that controller inputs can't be checked with mods

#

(unless I lost an update)

paper bone
#

in case anyone wants to look through some of these icons

regal bear
#

So... uh... HTML tags can go anywhere? 😮

"┌─ <b>Lap</b> Time by..."

"<b>Ha </b><i>Ha </i><u>Ha </u>"

'Someone' may have opened a worm of cans!

shadow iris
#

time to add doom to subtle messages

#

worm of cans is wild btw. i think you meant can of worms

regal bear
#

plus it's a better visual

shadow iris
#

oo you could do like flare on text with a scrolling bold part

#

like you have "Claim the crown!" and like 2 characters are made bold and that scans across the text

regal bear
#

well you might end up with text that all tag and no... um message

shadow iris
regal bear
#

I did scrolling text and other animations already in TCP - don't need HTML for that.

#

I know /n works in Subtle messages - I use it.

shadow iris
shadow iris
regal bear
#

Animation works in Subtle Messages too

shadow iris
#

wait what if we put <style> and then custom css XDD

regal bear
#

But yeah adding bold, italics, underline, etc it's useful.

paper bone
#

Subtle messages really suffer heavily under the char limit, it hurts to use

regal bear
#

yeah. The Header part of a subtle message doesn't actually even fit all 32 on screen - unless you put a line break in (and then you get 30 visible at least)

shadow iris
regal bear
#

We can get around the character limit with animation (lots of updating values) so it's still handy to be able to use tags

shadow iris
#

what about divs?

regal bear
#

hehe who knows?

shadow iris
#

could do a div and then style

#

or just a styles element

regal bear
#

span too?

shadow iris
#

div and set font size !!!

#

maybe even LINE HEIGHT!!

#

what happens with absolute positioning and relative offsets

#

can we move divs outside the UI window?

#

set the overflow to display too?

regal bear
#

I haven't got time to test right now. I expect it might be tags but not styles etc.

shadow iris
paper bone
#

<ul>👀

regal bear
#

Can't wait for people to make eye splitting rapid blinking marquee scrolling nightmare UI's 😂

shadow iris
#

God forbid horizontal scrolling in mod windows

regal bear
#

oh sorry - did that one

paper bone
#

It would be crazy if things like <audio> work

shadow iris
#

radio button / checkbox when

regal bear
#

so the UI is built on a browser you say?

shadow iris
paper bone
shadow iris
paper bone
#

<table> could be interesting

shadow iris
#

or if we do have styling then customizing text background, overflow visibility, line height, font size

#

WE COULD DO TRANSLUCENT UI EVEN

#

oh actually

paper bone
#

hyperlinks?

shadow iris
#

if absolute positioning works then you could just have an actual custom UI engine

regal bear
shadow iris
paper bone
shadow iris
#

tinyurl lore

#

bitly lore

dapper jay
#

there are two more but theyre probably not relevant for tm

shadow iris
#

yup

regal bear
#

OK so if colour works - wow

shadow iris
#

color and font size

dapper jay
#

colour and size do work in some places

shadow iris
paper bone
shadow iris
dapper jay
#

it should

regal bear
regal bear
#

Yep coloured text works

dapper jay
#

transparency also works

#

size works as well but it gets clipped off

regal bear
#

The tags appear not to count towards the 32 character limit at all!

dapper jay
#

btw the game still has a chance to crash if you enter too many characters

paper bone
regal bear
regal bear
dapper jay
#

yay

near parcel
wet dagger
#

Hey guys, I've just started on making some mods for TM. I can't find anywhere if we have an in-game console or maybe even a log file to see prints etc from Lua?

dapper jay
#

the game creates a .log file for every mod that prints something

radiant lion
#

tm.os.Log(whatever)

dapper jay
#

tm.os.Log("erm ackschualli")

wet dagger
radiant lion
#

Unfortunately I am pretty sure that's up to date

#

Tho the game should provide you with one that for sure is up to date, either in the mods folder directly or from "documentationmod"

wet dagger
#

Thank you thats's perfect!

dapper jay
shadow iris
#

ooh, could that be used to disconnect (but not ban/kick) players? cause that is probably clientside rendering

#

line-height at 50% also crashed the game

dapper jay
#

are you sure the string is not longer than 64 characters?

shadow iris
dapper jay
#

yeah thats gonna crash your game

shadow iris
#

but i heard that crash was at 81 characters

#

not 64

dapper jay
#

its 64

shadow iris
#

damnit so many of these from frans' unity docs list dont work

#

why why why

#

also i dont think any of the ones that require a string (e.g. <font-weight="100">) will work unless im doing something wrong

#

wait i dont need to put the "" for color at least

#

hyperlinks do work but you can't click on them 😭

regal bear
#

This tag stuff is effectively a new feature for us which is pretty fun 🙂

shadow iris
regal bear
#

Bummer. Nice work going through and checking though 👍

shadow iris
#

damn you, glyphs don't work in ui

#

and yes i tried other indexes

#

tf why isnt <s> allowed

dapper jay
shadow iris
#

standard tags for text formatting

<a> - hyperlinks (can't click on the links) (doesn't work with subtle messages)
<b> - bold
<color> - colored text
<i> - italics
<rotate> - rotate individual characters (works only in subtle messages)
<size> - font size (maximum of 16px before vertically overflowing in ui window)
<sprite name> - can't test
<sprite index> - glyphs like controller inputs works only in subtle messages

shadow iris
#

so all we get is colored, bold, italicized, miniature text

#

and also translucent

shadow iris
#

hmm because subtle messages allow sprites, WHAT ELSE WORKS?

#

IT ALLOWS <S>

#

YOO

#

god save us all it allows size too

#

frans never patch this out istg lol

#

the character limit still exists but now we can cover the screen with subtle message

#

we can have thin message subtle messages too!

#

also uhmm

#

new ui windows just dropped-

shadow iris
regal bear
# shadow iris

Use line breaks after each letter to get vertical text

shadow iris
#

i wonder if i can get the formatting to work on the image too lol that would be horrible

regal bear
#

Such a shame the SMs suffer from tags adding to the character limit

shadow iris
regal bear
#

I tried to add colour to my racing splits hud but I can't fit enough info in between the tags 😦

shadow iris
#

one day i will relearn how to import a texture

#

i dont think it does sadly

#

fair enough tbh

#

wait

#

it still loads the image even with the tag

regal bear
shadow iris
#

yoo voffset works

regal bear
#

yeah I found that too but I wonder if there are other consequences (with no closing tag)

regal bear
shadow iris
regal bear
#

well then

shadow iris
#

rotate works

regal bear
#

indeed

shadow iris
#

margin works

regal bear
#

cool

shadow iris
#

negative text size OVERFLOWS OUT

#

!!!!!

regal bear
#

aaaaah wot?

#

you escaped!

shadow iris
#

it doesnt wanna work with rotate=180 😢

#

i forgot a > thats whhy

regal bear
#

ooh nice one

shadow iris
#

you get 10 characters to play with

#

also is it just me or is that image smaller

regal bear
#

special chars could be useful here

#

a floating 'icon'

shadow iris
#

negative <pos> values makes the subtle message flicker like crazy

#

a has snuck into the image 🕵️

#

yoo negative line indent pushes it left

regal bear
#

wow!

shadow iris
#

this method gives you TWO WHOLE CHARACTERS!!!!

#

and ONE that escapes

regal bear
#

Doom

shadow iris
#

you can get 2 characters outside by sacrificing the header too

#

ah you dont need voffset, that saves a lot of chars

#

its only giving me one character that escapes to the bottom center of the screen

regal bear
#

Imagine this when SM's are stacked. You could really get stuff in the way of the player mid screen hehe

shadow iris
#

yoo negative mspace also lets you escape

#

and mspace is less characters

regal bear
#

nice

shadow iris
#

its stacked one character per line

shadow iris
#

my biggest issue is the char limit and also trying to get more than one character on one line escaped

#

half credit

#

well i can escape 2 characters but theyre seperated like theyre in a long distance relationship

#

oh and theyre on 2 lines too...

#

oh piss off it works but only for up to -425 space

#

so close yet so far

#

what i currently have rn allows 3 characters btw

#

cause <align=justified> is so god damn fat

#

but ofc <space> is limited to -425 so i cant center it anyway

#

damnit <indent> is limited to -425 too... is it a hard limit?

#

they yearned for the custom ui

cinder spruce
#

screen space sprites when 💔

shadow iris
#

nobr is a joke

#

who dwells t here

#

i saw someone typing

#

i can do this but what good is it without text

#

if i can make it have multiple characters on one line then it can be backgroundless text

regal bear
#

screenspace crosshair?

cinder spruce
regal bear
#

pretty cursed

cinder spruce
#

if its only the one it would be cool for heads up display info for modded values

#

as long as you can get enough characters

shadow iris
#

then id be happy

#

i just need the multiple chars per line and centering it too

#

this char limit SUCKS

#

4 chars to work with

cinder spruce
#

why does it even exist

shadow iris
cinder spruce
#

is there an actual reason tho?

shadow iris
#

the game CAN handle way more (even in official use) so

#

my best guess is 🖕

#

<nobr> for no line break is full of shit

#

it hasnt worked once in my use case

#

lowk if i just keep throwing shit at the wall maybe it will eventually work

#

i haven't been at this for over 2 hours trust me

regal bear
#

take a break

shadow iris
#

i wonder if a hyperlink would work

#

i forgot how to href

#

nvm

#

0-181 (182 glyphs total)
181 is empty it appears

#

118 is the warning symbol used when overlapping blocks are present in build mode

#

121 is a red/white circle thing

#

127 is the arrow key cluster

#

129 is XP

#

130 is gold

shadow iris
#

im afraid it isnt possible to make all the escaped text on one line
this is the closest i can get

#

z layering between subtle messages is random

#

if a completely transparent image is used, could have a slimmed down subtle message

#

HATRED

#

for some reason the header can go further before linewrap fucks it

#

this is the best i can do

shadow iris
# warm canopy Controller Xbox: 1 = B 2 = X 3 = Y 4 = LB 5 = RB 6 = LT 7 = RT 8 = DPAD 9 = DPA...

Keyboard glyphs:
32 = ALL ARROW KEYS
98 = UP ARROW (small)
99 = DOWN ARROW (small)
112 = LEFT ARROW (small)
119 = CTRL (small)
120 = B (small)
122 = RIGHT ARROW (small)
127 = ALL ARROW KEYS (small)
128 = TAB (small)
142 = F
143 = 1
144 = 2
145 = ALT
146 = Y
147 = Z
148 = I
149 = R
150 = E
151 = CTRL
152 = W
153 = A
154 = S
155 = D
156 = SPACE
157 = B
158 = DEL
173 = TAB
175 = BACKSPACE
176 = F5
177 = INSERT
178 = F6
179 = F8
180 = C

#

Extraordinary glyphs:
13 = Hamburger menu (controller)
15 = Xbox logo

49 = Long empty key
50 = No access
51 = Caution
52 = Alert
53 = XP
54 = Gold

86 = No access (small)
87 = Caution (small)
109 = Square empty key (small)
110 = Rectangle empty key (small)
111 = Rectangle empty key (small)
121 = No access (small)

181 = Empty

#

Mouse glyphs:
28 = Mouse
29 = Left Button
30 = Middle Mouse Button
31 = Right Button

106 = Left Button (small)
107 = Middle Mouse Button (small)
108 = Right Button (small)

formal crane
formal crane
#

--
I have come to realise that I have communicated the next fixes will come in "next release cycle"
This was ambiguous and what I meant was whenever we have time served for modding programming.

There won't be anything for PvP part 2, but I can let you know there has been made things for after that.

shadow iris
#

known for a while: rotation seems to affect whether theyre in shade or not

and wavy plant prefabs are not correctly darkened as you go deeper into the water it seems

ocean delta
#

how do i get the complexity mod?

shadow iris
ocean delta
shadow iris
#

might wanna update y our roles

#

they can be found either on the ingame workshop or steam worskho

#

i would recommend steam workshop

ocean delta
ocean delta
wet dagger
#

Hey I'm having trouble with block health, it seems to be that blocks StartHealth and CurrentHealth for freshly spawned blocks don't match. Also using SetHealth only changes the start health and not the current health. Anyone have any insight?

shadow iris
shadow iris
#

it now has a proper icon

shadow iris
#

options to control echo in a given area would be cool, like in caves and such

#

although so would darkness volumes / black fog

#

actually fog volumes/world fog controller in general

shadow iris
#

damnit why is this model cursed

#

its triangulated, its uvs arent completely cursed, the model faces and vertices are both way under 32767

wet dagger
# shadow iris it now has a proper icon

Hey I've had some issues with clearing up the map of structures. When I clean up for example, the entire build gets removed but suddenly flashes back into existence a moment later. By which method are you successfuly clearing them up if you don't mind my asking

shadow iris
#

@scenic echo

local playerId = 0
tm.playerUI.AddUILabel(playerId, "header", "<b>Time of day presets</b>")

tm.playerUI.AddUIButton(playerId, "morning", "<color=#d0a000>Dawn</color>", SetTOD)
--tm.playerUI.AddUIButton(playerId, "early_noon", "<color=#70a0ff>Morning</color>", SetTOD, 45)
--tm.playerUI.AddUIButton(playerId, "default", "<color=#5080ff>Default</color>", SetTOD, 50)
--tm.playerUI.AddUIButton(playerId, "late_noon", "<color=#eedd99>Afternoon</color>", SetTOD, {tod = 60})
--tm.playerUI.AddUIButton(playerId, "sunset", "<color=#dd77aa>Sunset</color>", SetTOD, {tod = 65})
--tm.playerUI.AddUIButton(playerId, "evening", "<color=#503090>Dusk</color>", SetTOD, {tod = 70})
--tm.playerUI.AddUIButton(playerId, "midnight", "<color=#202050>Midnight</color>", SetTOD, {tod = 95})
--tm.playerUI.AddUIButton(playerId, "late_night", "<color=#102090>Night</color>", SetTOD, {tod = 5})

function SetTOD()
    tm.world.SetTimeOfDay(34)
end
scenic echo
#

Wth

shadow iris
scenic echo
shadow iris
#

i am cursed with ui istg

#

every time ive tried doing stuff that involves callbacks or buttons/text in general it never works

#

@scenic echo FIXED IT

scenic echo
shadow iris
#

this works

#

but its hardcoded

scenic echo
#

that makes so much sense

#

i just did:

function onPlayerJoined(callback)
    tm.playerUI.AddUIButton(callback.playerId, "morning", "<color=#d0a000>Dawn</color>", SetTOD, nil)
    tm.playerUI.AddUIButton(callback.playerId, "L1", "Switch active keybind", SwitchKey, 0)
end

scenic echo
# shadow iris

the function needed to be initialized before you tried using it

shadow iris
#

so all i needed to do was ask tech support

#

as always

scenic echo
shadow iris
shadow iris
#

setting time of day to 0/0 or math.huge makes the world completely black, but when setting it back to an in-bounds time, ambient light remains in a weird state

#

this works until the world goes in and then out of nighttime
entering and leaving water also fixes this (water probably has its own ambient light setting)

#

and during dusk (before the moon has come out) you can have no ambient light and no moonlight

#

@cinder spruce yo

#

reflections/cubemaps still work i believe

#

this only works when timeofday has been rendered in the broken state once

#

build mode corrects this bug

#

this bug affects tire tracks

#

particles are completely fucked

#

tire tracks render through things

scenic echo
shadow iris
sleek apex
shadow iris
shadow iris
cinder spruce
#

witchcraft

shadow iris
#

using structure.GetRotation().y%1==0 no longer works for quickly detecting structures in build mode?

wet dagger
#

@shadow iris What about just

tm.players.GetPlayerIsInBuildMode(playerId)
shadow iris
#

and you cannot assume a player only ever has one structure

wet dagger
#

I see what you mean

shadow iris
#

never seen that before (the server froze)

#

for reference, this is line 104?

near parcel
#

add logs to see where execution is actually ending

shadow iris
#

does ModBlock.SetGyroPower() actually work? i cant get it to work on a regular gyro

#

at the very least it doesn't update in the settings menu of the gyro. at worst, it's not actually doing anything

#

ModBlock.GetGyroPower() works just fine at reading the in-menu value of the gyro

#

setting engine power to math.huge or 0/0 crashes the game while welding. who saw that coming 🤔

cinder spruce
#

i have a solution to this bug

don’t use math.huge as an argument mlem

warm canopy
#

Yeah that seems the cause of most of the issues

#

And setting engine power to 0 always causes a crash

shadow iris
warm canopy
#

0 also crashes

shadow iris
#

header colors in subtle messages are just so god damn pretty

#

yo alvaro, you told me a while back to use deltatime to calculate server performance... that doesn't work

#

also apparently this happened

warm canopy
#

I suspect SetGyroPower doesn’t work. I thought it was something else but I use that function in Aerobatic Aces mod and it does not set the gyro power

shadow iris
warm canopy
#

For frans reference, you can see in my mod by starting the mod, flying around until you run out of fuel but make it back to the carrier. The gyros in the plane (Hellkite) don’t regain their power