-
Posts
18.123 -
Joined
-
Last visited
-
Days Won
587
Everything posted by Stan`
-
less precise sorting in range manager
Stan` replied to real_tabasco_sauce's topic in Game Development & Technical Discussion
How slow? On a good machine it's about 2-4 mins. Actually it failed to build What did you expect -
Hey, I have some good news and some bad news... The good news is that I found the potential culprit for that messy behavior okay preview -> broken construction -> broken final. The problem is that Foundation.js sets the scaffold animation on buildings. That breaks the construction (If you remove the lines in Foundation.js the color is correct until completion) After that it switches animation again to Idle I suppose and that breaks the final state. It "works" for buildings that have been placed at the start of the map because I suppose they don't change anims. Unfortunately there is no way to force colors to update after each animation change... This might be a C++ "bug". Which means we can't fix it without hacks.... One could add 8 variants of the particle to every single actor and switch them in the component we made. Each particle variant would have a color that you need to guess from the rgb values (fun heh) Another solution is to get the animation name using a timer periodically and if it changed to force the color to update again.
-
Can you push it in the branch of the mod git so I can take a look tomorrow ?
-
Could be macs overheating, if you have adapters you could try to play with ethernet cables. I have seen wifi problems with macs before:
-
if (msg.ent === this.entity) this.UpdateColor(); I meant doing this in OnGlobalOwnershipChanged the global functions are called for every unit anytime anything changes. It's a bit better than OnUpdate but it still isn't great for performance. I suppose it triggers one of the global functions and causes the old buildings to reupdate. I didn't know you were using wals, there might be something different in Wall.js or Wallset.js
-
You can filter the entity // msg data is {"entity": ent, "from": playerId, "to": playerId}
-
"Loading map data. Please wait" on single-player matches
Stan` replied to alindley's topic in Help & Feedback
You can't since you cannot reach that screen. You can disable persistent match settings or delete the matchsettings file too. i wonder if enabling a mod might work too -
You can download the files from the repository https://trac.wildfiregames.com/browser/ps/trunk/binaries/data/mods/public/art/textures/cursors change them, and put them in a mod of your own.
-
That's because the mines don't have the same name. You need to look for "ore" or "rock"
-
The preplaced buildings probably work because they down change ownership when they are being skirmish replaced.
-
Usually that's why we have a call on Ownershipchanged but maybe there is a message we're not listening to
-
The error means it cannot find the owner, (probably cause it doesn't have one) It's this code that fails: const color = QueryOwnerInterface(this.entity, IID_Player).GetColor(); cmpVisual.SetVariable("colorr", color.r); cmpVisual.SetVariable("colorg", color.g); cmpVisual.SetVariable("colorb", color.b); You can replace it with const cmpPlayer = QueryOwnerInterface(this.entity, IID_Player); if (cmpPlayer) { const color = cmpPlayer.GetColor(); cmpVisual.SetVariable("colorr", color.r); cmpVisual.SetVariable("colorg", color.g); cmpVisual.SetVariable("colorb", color.b); } but then since it cannot find the player it will not set the color
-
Weird because the second one is correct The first one registers a new interface for the engine. So it should never be called outside of the first initialisation of the component in the js file (Although you could create runtime components for nefarious purposes, I would advise against it) If the first one doesn't work, it means that whatever is calling that code doesn't have that component attached, which could mean the template is invalid.
-
less precise sorting in range manager
Stan` replied to real_tabasco_sauce's topic in Game Development & Technical Discussion
Well like anything it depends. Would need to be profiled. @wraitii had an optimization for the range manager here https://code.wildfiregames.com/D5022 not sure what it's worth. -
This one https://code.wildfiregames.com/D5006 Wraitii had a bunch of performance patches that might be worth looking at https://code.wildfiregames.com/search/query/1SOtiSQV9ik8/#R
-
Just a quick note another big performance improvement in A27 will be with the removal of spectre and meltdown mitigations in spidermonkey which slow considerably the js execution. wraitii did a few other improvements iirc but not sure which got it and which got reverted. The one about messages could potentially be good if it worked ^^"
-
It's okay. Perserverance is all you need Regarding your interrogation I think by default everything is INVALID_PLAYER = -1 You might also print this.entity so you know which is which. Ideally in one statement warn("entity: " + this.entity + " Owner: " + cmpFoundationOwnership.GetOwner()); Or use string interpolation warn(`entity: ${this.entity} Owner: ${cmpFoundationOwnership.GetOwner()}`); Maybe we forgot the edge case of QueryOwnerInterface not having an actual player
-
Well ent is not defined, and your setting the player to itself ^^ so it wouldn't change much
-
It's done in the foundation.js component. Basically your building goes through 3 filters preview| foundation| and nothing
-
Well it's possible the owner isn't set when we set the color, and so it sets gaia instead of something else. Although from your logs it looks like the color is correct
-
does this have any vampires or gods
Stan` replied to vampygirl699's topic in Introductions & Off-Topic Discussion
Most of the RTS stuff is already written, you just need to reskin units to be vampires and whatnot. And maybe some new buildings to fit more the theme -
Well first, you have to figure out when the code is called and with what params
-
The Guinterface forces a reload of the color, a bit like the on update That's why the color is changing. I'm wondering if we don't switch the color too early, causing the gaia color to be taken...
-
In order to make mods more maintenable, we recommend users only override functions they touch rather than the whole files. You would usually have a file named ~GuiInterface.js with only the modified functions. After the Guiinterface change ?