Jump to content

tinter

Member
  • Content Count

    553
  • Joined

  • Last visited

  • Medals

  • Medals

Everything posted by tinter

  1. I have with the help of others created a script that spawns and despawns furniture in houses. Download: https://github.com/Tinter/Tinter-Furniture/releases At the moment it currently is more of a tool-suite as I'm not an impressive interior decorator. I would very much like to gather up a library of compositions with the help of the community, although I'm not entirely sure on how to organize this yet. Github: https://github.com/Tinter/Tinter-Furniture Steam workshop (Does only have a test mission): https://steamcommunity.com/sharedfiles/filedetails/?id=1895377640 Showcase of the script: Quick showcase of how to add make and add compositions: It spawns furniture locally as simple objects in nearby houses, despawning it when you're far away. The furniture is defined by compositions that you make in eden and using the scripts provided, organize them into files. The compositions are defined on classnames, but a lot of work has gone into trying to make similar buildings compatible, for example the buildings on Altis and Malden are different, but the script will recognize them as the same. Info on how exactly to do this is in the readme file. Furniture is also spawned on the server so that AI will also (hopefully) consider it. I have no indepth test of performance with this script active, but I have played missions with it active and it didn't slow the mission to a crawl at least. At the moment it currently is more of a tool-suite as I'm not an impressive interior decorator. I would very much like to gather up a library of compositions with the help of the community, although I'm not entirely sure on how to organize this yet. Thanks to Diwako, G4rrus, Tennessee, jonoPorter, Meanwhile
  2. I've described a method for excluding a specific area here. As far as considerations go, not specifically, but I've tried to keep furniture out of the way.
  3. It depends on the map, I am not familiar with Vidda, but if it uses houses used on any of the normal maps, then it should already be covered. If it uses custom houses, then the limiting the factor is and always will be making compositions of furniture. They take a lot of time and effort for me to make and I have even less time now so I don't see myself making anymore for quite a while at least.
  4. Based upon my script, I have decided to make a mod for people who aren't mission makers but still want to spice their missions up. For anyone who doesn't know my script, this mod will spawn premade compositions dynamically as simple objects into houses around the player, removing them when they're out of range. I have earlier released this as a script: I will preface this by saying that I really think this works better as a script. The mod will spawn furniture into every house without checking whether the mission maker has placed anything there. It is not feasible to whether a house is intended to be used some other way by the mission maker, thus why this should be implemented on a per mission basis, ideally. The script is local, so everyone needs to see it running, and the server as well to make furniture block AI line of sight. Download: https://github.com/Tinter/Tinter-Furniture-Mod/releases/ Github: https://github.com/Tinter/Tinter-Furniture-Mod Steam Workshop: https://steamcommunity.com/sharedfiles/filedetails/?id=2248165312
  5. Ah yes, that is some Laws of War composition. Removing it from the mod is probably a good idea.
  6. Yes I saw, but again it depends on what you mean with doubling up. Including every file should not cause issues. If there are compositions for the same building, then each building will randomly choose one. The only problem you might run into is that a specific house type is clean some places and covered in blood other places. I gathered from your original question that you were worried about a furniture pile up? I interpret that to mean furniture spawning on top of each other, like a chair clipping inside a table? That will not happen even if you run everything. If this is not what you're worried about, please let me know.
  7. Depends on what you mean by doubling up. It should never try to put furniture on top of a building that already has furniture. So in that case it would be safe to run absolutely everything. On the other hand some furniture is themed, so if you don't want houses covered in sandbags or with blood piled up, you should leave those out. Hope this clarifies things, if not just ask! I am very happy to hear that you enjoy it, I appreciate all feedback!
  8. Finally got around to releasing a new update, I'll leave you with the changelog this time.
  9. It is update time again. I'll just quickly post the changelog here.
  10. If you have objects, like furniture in a building that you want to move to another building, you might run into problems with objects ending up being offset and being oriented weird. I've spent quite a while on this problem and with the help of a scripter named Nigel, we found the solution. For visibility I'm making a post here so anyone searching for it might stumble onto the solution. tint_fnc_getRelPosAndOrientation = { param["_objA", "_objB"]; _pos = getPosWorld _objA; if (!(surfaceIsWater _pos)) then { _pos = ASLToATL _pos; }; _relativePos = _objB worldToModel _pos; _relativeOrientation = ([_objA, _objB] call BIS_fnc_vectorDirAndUpRelative); [_relativePos, _relativeOrientation] }; tint_fnc_setRelPosAndOrientation = { param["_objA", "_objB", "_relPosAndOrientation"]; _relPos = _relPosAndOrientation#0; _relOrientation = _relPosAndOrientation#1; _relDir = _relOrientation#0; _relUp = _relOrientation#1; _objA setVectorDirAndUp [_objB vectorModelToWorld _relDir, _objB vectorModelToWorld _relUp]; _objA setPosWorld (_objB modelToWorldWorld _relPos); }; I've made an issue about whether these functions would be a good fit for CBA, but it has stagnated https://github.com/CBATeam/CBA_A3/issues/1353 As a sidenote, if working specifically with houses, it might help to take the bounding center into account, since some houses that should be the same seem to have a slightly offset origin, you can see an example here https://github.com/Tinter/Tinter-Furniture/blob/master/furniture/functions/fn_dressUp.sqf#L62
  11. Thank you! I'm sorry I'm a little late on answering this, but better late than never. Short answer, the seed controls exactly what furniture appears in each building. Long answer, each building has a predefined list of furniture for that type of building. I place down furniture in eden so it looks nice, then save it so that I can put it on any building of that same type. Some building types have more than one, so to make more than just one set of furniture appear, I choose which list actually shows up randomly, but only sorta randomly since we would want people to see the same furniture in multiplayer. So if they enter a building with the same seed, they'll see the same furniture in the same place. If they have a seed that is not the same, one might see a chair where the other sees a table. The reason I let people set it manually is that due to the randomness involved, sometimes you might see buildings all have the same internal layout next to each other, so you can change it if it ends up a little weird. It mostly applies to mission makers using the script though. If you play in multiplayer I recommend everyone use the same seed, you can force it on the server even. As for the error you get, I don't have a lot of context, but I do not believe that the mod would change anything about locality for vehicles or really do anything that would cause that error to show up. If you can reproduce it consistently, then I can take a look at it.
  12. Thanks to lelop we have now a nice new set of compositions for Livonia buildings! It is available now.
  13. Big thanks to lelop! The Livonia update is now live adding a whole new slew of compositions for Livonia buildings!
  14. @HBAOplus Hey and thanks for showing your interest. I'm sorry to say that it doesn't at the moment. It's not impossible to do, it just takes a lot of time for me to make compositions, so I haven't made any for CUP. As always, I have to mention that any help is appreciated and if anyone wants to contribute with compositions for CUP or even just vanilla buildings, then I'd be happy to help make it work. I've considered whether I should write some guidelines for how contributions should be handled, but I haven't yet worked with anyone, so I'm not sure how it would look.
  15. I've updated both the script and the mod so that they use CBA settings now, and the mod will turn off if a mission is running the script, avoiding spawning the wrong kind of furniture and what not. Not that I assume anyone was going around calling the functions in the mod, but I have also changed the function names, so they don't overwrite the script. The release can be downloaded from https://github.com/Tinter/Tinter-Furniture-Mod/releases/tag/v2.0.0 or at the workshop. Thanks.
  16. So I have now updated the script and the mod so that they both use CBA settings and the mod will turn off if a mission is using the script, avoiding spawning the wrong furniture if the mission is set to use something else. Other than that I have now also added the classnames for Global Mobilization buildings. No compositions yet, but it's one step closer. As always, get it here: https://github.com/Tinter/Tinter-Furniture/releases
  17. Glad to hear it's working well! As far as adding that as a feature, I'm not sure if I want it to be part of the script, but for now you can do this with a trigger where the condition is set to true and the on activation is { if ([thisTrigger, _x] call bis_fnc_inTrigger) then { _x setVariable ["tint_house_blacklisted", true] }; } foreach ((getPos thisTrigger) nearObjects ["house_f", (triggerArea thisTrigger#0 max triggerArea thisTrigger#1)]) then it should automatically blacklist buildings inside of the trigger when the mission starts. I hope that helps.
  18. Go for it. The more people that can enjoy the mod the better! Have you used the script some? I'm sort of fishing for feedback here as I haven't gotten a lot. No news is good news I suppose, but I still can't help but want to hear people's thoughts.
  19. Both the script and mod have been updated now, to fix an issue with furniture double spawning when buildings get partially destroyed.
  20. Got a few mores fixes rolled out. The most important is furniture sometimes spawning twice, due to two issues appearing at the same time. I got it somewhat fixed, but it might not cover all cases. https://github.com/Tinter/Tinter-Furniture/releases/tag/v2.0.2 And for I released a mod version of this for anyone interested who don't happen to be mission makers. https://forums.bohemia.net/forums/topic/231111-tinter-furniture-dynamic-furniture-as-a-mod/
  21. New release again! Turns out that this script would stop missions from loading when played on a dedicated server. G4rrus reported and nearly fixed this himself. Get it here! And my apologies to anyone who might've tried to use this on a dedicated server, only to get a confusing and hard to diagnose result.
  22. I can't remember the details well enough to tell you without having to analyze my code. Your best bet would be to use the ingame function viewer so you can see what the actual code of the CBA functions do. Even the headers usually tell you what the function is for, along with any deviation from similar functions.
  23. Thank you, I'm glad to hear when someone finds this useful. As for why I use the CBA functions, it's because I think their functions are nice and convenient. I'm not sure if any of the functions I've used have a vanilla function that does the same. I find that even if they seem to be the same they might often differ in the details. As for modifying the script, you are allowed to modify it in any way you see fit, but of course I can't give you permission for any CBA stuff.
  24. Thanks for all the feedback, a late reply as I was on vacation. The amount of furniture is probably the biggest impact on performance, more so than actually spawning it, but Diwako is right that they're all local simple objects. I think the compositions and thus also the amount of furniture per building, should be decided by the individual mission maker with regards to how much they want to compromise and what else is in their mission. I've thought about making modules and such, but that would require me to make this into a mod. It could probably be made into a mod, but I think overall that the concept fits a script best, as the mission really needs to be added with furniture in mind. You could get away with this, by letting the player set the furniture, but first of all respecting mission settings, if any, and having a debug menu to remove furniture in houses that shouldn't have them. Maybe some day, but probably not for the near future.
  25. Sounds to me like you don't want to take objects you've placed in eden, but objects that are part of the map? If you have a grabber or placer function that takes a list of objects, you can pass it the output of nearestObjects to get a list of map objects. You can run this from the debug console in the eden editor If not then, you will probably have to code some function to save and load it manually.
×