Jump to content

Dr_Cox1911

Member
  • Posts

    814
  • Joined

Reputation Activity

  1. Spiffo
    Dr_Cox1911 reacted to nasKo in Mod Spotlight: Community Map Jam   
    Good day, exhausted scavengers! This time we have not just one but FIVE community made maps for you to explore, build, fight and die in. All five were entries to the Halloween Community Map Jam run by Pertominus on their Discord server, and are a diverse collection of spooky maps that are fun to play all year round.
     
    Backrooms by Azakaela (previously featured on this very mod blog) is inspired by the “Backrooms” creepypasta, where a person finds themselves in endless, haunted yellow corridors, stalked by strange, unknown entities (though in PZ, those entities are a little less “strange” and a little more “zombified). Peles Mansion (based on Peles Castle in Romania) by Daddy Dirkie Dirk is an elaborate and beautiful mansion featuring many custom tiles, while Finnegan Mental Asylum by Fred Cooper is a sprawling, infested complex with a prison and implied experiments – very unlike the benevolent activities of our canon Finnegan Research Group.
     
    Gabester (of Elysium Island) is the creator of The Museum, another sprawling complex, this one filled with a variety of waxwork models, custom tiles, and (with the proper mods installed) some cool old-world weapons to fight the hordes with.
    The final entry is the winner of the map jam: Overlook Hotel by Pertominus themselves, an incredibly atmospheric recreation of the famous hotel from The Shining, filled with recognisable locations (and that famous, awful carpet).
     
    We wanted to find out more about the map jam and each of the maps, so we tracked down Pertominus themselves. They kindly took time off from typing “all work and no PZ makes Jack a dull boy” to answer our questions!
    Pertominus
    Hi Pertominus! Before we dive into the map jam, tell us how and when did you discover PZ?
    “I picked up Zomboid in 2015, logged a couple hundred hours on it, and put it away until Build 41. Since then I have stacked up over two thousand hours, mostly playing multiplayer with friends on the Aussie Survival Server.”
     
    Tell us about your own maps and mapping experiences prior to the community jam.
    “Prior to Map-Jam I had only published Christmas Village. It’s a quirky seasonal map that I created for a Christmas event, to play with friends. It should have been as fun to play as it was to make. Instead, it got almost everyone killed (sorry, gang)!”
     
    Please give us an overview of the Halloween map jam, and tell us a little about each of the entries. Have you created or participated in other map jams before?
    “The 2022 Map-Jam was an idea originally proposed by Azakaela who wanted to expand the contest after the 2021’s ‘A to B’ Map Jam. Just like a ‘game jam’, a ‘map jam’ is an accelerated creation event where themed maps or buildings are created in a relatively short time frame, and the end results are shared publicly. The rules were pretty simple: anything creepy-crawly, spooky-scary, that goes bump in the night or gives you fright!”
    Finnegan Asylum, by Fred Cooper
    “The Finnegan Asylum, only loosely associated with Finnegan Research Group, was the first entry to show any serious development in the contest. Its huge layout is impressive enough but especially so for a first time map maker! Fred Cooper didn’t miss a single tile and kept improving the map even after the deadline. It’s a challenging but rewarding map, it fits into the vanilla world and has all the necessities for survival. I would recommend bringing the entire faction and a trailer of weapons for this challenge map. I’m definitely thankful to Fred Cooper for showing interest early on and motivating others to compete.”
    The Museum, by Gabester
    “The Museum was a late entry for the Jam but showed up with dozens of previously unreleased assets that were an absolute crowd favorite. It’s got a few secrets hidden inside and several fantastic references from the Mapping Discord, but Gabester really outdid himself with the Steam preview video, it’s a must see! The Museum was actually tied for first place after the judges voting so we had a difficult tie-breaking decision to make.”
    Backrooms V3, by Azakaela Redfire
    “Aza managed to keep development of this HUGE map secret, and then revealed that it was completed and ready to go weeks before anyone else. It was impressive how fast she got through it considering the restraints of working with buildings that size. There are a lot of confusing passageways which are the same but in the centre and towards the edges there are some very unique scenes which are worth surviving to explore.”
    Peles Mansion, by Daddy Dirkie Dirk
    “Dirkie smashed out this entry over two days in the final week of the competition, but it’s still packed with content. It has heaps of custom tiles, some made specifically for this map! It’s in a really nice spot and intentionally hidden from the map so it would be a really cool place for a hidden base/event on servers.”
     
    Your spectacular Overlook Hotel map won the map jam. Can you tell us how you made it? How long did it take?
    “Overlook took me a solid month to finish. I based the exterior appearance off the Stanley Hotel, which inspired Stephen King to write The Shining, and I was fortunate in this case because the building is so well photographed. Google Maps even has interior walkthroughs of the building for the numerous hallways and suites that I had no inspiration for. The Shining is also a bit of a cult classic so naturally there are dedicated fans who anonymously compile floor plans and reference images for no reason at all. I browsed a few of these sites as well and they were a huge help! With all this great reference material all I had to do was find the closest tiles visually.”
    “For the interior of the Overlook I tried to recreate the iconic movie design. the carpet, the walls, along with the blood and some easter eggs like the skeleton room and the chopped door.”
     
    What tips do you have for anyone trying to win a map jam?
    “I think it depends on the judges, we had a good mix this time! Players like one thing, server admins like another, and modders/devs look for something else entirely. The best advice is to get started early! share WIP images with the community, and encourage anyone who is considering making an entry to do so. So even if you don’t come first you still win a load of fun and friendship.”
     
    Do you have any mapping tips in general?
    “We always say start small! There are a lot of benefits to this besides just setting an achievable goal. Seeing the entire map making process from start to finish helps you optimise for a larger project, set up the tools correctly, get the most out of presets, establish your workflow and build up your custom assets.”
     
    Is there anyone in the PZ community (or beyond) you would like to give a shout-out to?
    “Hell yes! Thanks to all the Unofficial Mapping Discord admins for helping out with the organisation of the Jam, to Gabester for being such a good sport and competitor, to Dirkie, Azakaela and Fred Cooper for participating in this year’s competition to Nasko and Ayrton (the TIS devs who helped judge), and thanks to NoMiS, ItsAmelora, AuthenticPeach and RoyaleWithCheese who also judged. Be sure to check out their channels!”
     
    Outside of the jam, which maps or mods by other users do you enjoy or find interesting?
    “I’m somewhat of a collector so I have almost all the maps! I couldn’t possibly pick a favorite but a fun mod we fought to have installed on the server that I HAVE to recommend is Edible Junk, because I think eating crayons is just harmlessly funny.”
     
    What’s next in your mapping plans? What’s the dream?
    “Short term goal is to finish my Phoenix map, which some might remember from pre-41. Long term goal is to help get the Simpsons-Springfield and Fallout community projects into a releasable state. Both of these are huge projects that intend to be complete overhaul mods so there is lots of work to be done, not just mapping!”
     
    “Future map jams are guaranteed. We haven’t decided on the next theme yet but we’re also toying with the idea of a smaller scale building jam!”
     
    Thanks to Pertominus for answering our questions, and to everyone who entered their map jam! You can find all five maps here.
  2. Like
    Dr_Cox1911 got a reaction from gabriel rodrigues brandao in TPDOID   
    That's done on purpose, just look back almost a year where tooilet paper was horded like crazy. So TIS did this as a little easer egg.
  3. Like
    Dr_Cox1911 got a reaction from gabriel rodrigues brandao in IWBUMS 41.51 released!   
    So glad that this massive update is here! Can't wait to give this a proper go tomorrow.
  4. Pie
    Dr_Cox1911 reacted to Thuztor in Lewd Witches - 2D Action/RPG Top-down   
    I would like to introduce the project I'm working on since nearly a half year.
    No own homepage for now.
     
     
    Game Description
    As the title suggests, the game’s story revolves around witches.
    These independent witches, with a tendency towards lascivious joie de vivre in nature, body and spirit, describe themselves as soul healers and have nothing in common with their evil sisters. They do not take part in witches’ Sabbaths, but in many folk festivities, even if, like their sisters, they usually live alone in the woods away from the villages. They are highly valued by the local people for their healing powers and are often visited.
    You are one of these soul healers, but a time has dawned that will go down in history under the title “witch hunt”. Inquisitors of the Catholic Church are traveling through Europe with the papal mandate to exterminate the devilish brood that worships the devil and to banish them back to hell.
    However, this is not your only problem, because due to a prophecy of the wicked witches, you are the one who will annihilate the chief witches. In this regard, they try everything to prevent you from doing so, which will, however, cause you to tread this path in the first place.
    This path will be peppered with brutal, bloody battles. Use your magic, telekinesis, magic-influencing clothing, all kinds of weapons and the environment to fight your way through the bulk of your enemies, defeat the chief witches of the whole world and drive the demon out of your cursed soul.
     
    The following main features are planned for the full version:
     
    - Brutal, quick fights
    with different types of magic with countless weapons Furniture and other objects in the vicinity that can be influenced by telekinesis with or against your friends with severed body parts flying around - Your blood-soaked path will lead you through different eras in human history, including the present day. Massive forts, medieval villages, filthy dungeons, modern skyscrapers and huge mansions are just a fraction of the places that await you.
    - As a “Lewd Witch” wear various items of clothing to change your magic and adapt it to the conditions. Or emphasize your nudity to slide through the ranks of your enemies as fast and deadly as an assassin.
    - Experience epic battles against well-known and fictional witches from myth and media.
    - Use a variety of different weapons. The individual components which can consist of different materials willinfluence the weapon.
    - Use a variety of reagents to brew potions with different effects.
    - An absolute 2D top-down view with a simulated third dimension divided into 20 layers per level with dynamic physics.
    - Atmospheric, entertaining and situation-appropriate soundtrack without a genre bond.
    - Different game modes.
    Play the entire story alone or with up to three other players. Have duels against your friends over the Internet or on the split screen. Master different challenges in levels that are not related to the story. - An in-game editor for creating your own content, such as weapons, clothing and entire levels.
     
    Follow me on:
    Telegram: https://t.me/s/EmphasysMe
    Or on Tumblr
    Or Odysee or vimeo or Youtube
    ------
     
    You can support my project with a donation and you will be added to the list of owners of the game “Lewd Witches” with a donation of at least 1€ or with donations with a sum of 1€!
    Leave your mail adress during the donation, because for now, I don't know exactly how it works.

     
  5. Spiffo
    Dr_Cox1911 reacted to nasKo in On the Test Trail   
    Okay, so TLDR after the last night’s Wednesday Night Test Session on the Build 41 MP beta is that the new MP is increasingly LOTS of fun, but there is still LOTS for us to do.
     
    For those interested in the nitty-gritty, here’s the changelist for the week of dev-time that was being tested.
     
    For those who would rather just see a few quick vids and screenshots of the developers, PZ server admins and modders we assembled to have a play of the current Build 41 MP, here’s some of the very same:
     
     

    And, an example of one of the many bugs we still need to seek and destroy.


      And a few bits of tester feedback:

    “The whole group of us met up around the campfire and then made a cross-Kentucky trek. As we lost more and more people the feeling of being in a zombie movie slowly intensified. We started out with like… a dozen people and then hordes split us, people got bitten, etc. All was extremely fun and engaging. Despite a few bits of lag/desync, it really played extremely well. Issues seemed mostly to be fussy visual ones.&rdquo

    “It really was a blast, overall it’s very playable at the moment. There’s some desync with players sometimes, some slight tp’ing zombies and a bit of confused zeds when lots of players are around – but the overall experience is so smooth and SO PZ.”
     
    So, what items are on the list for polish and fixing ready for the next Wednesday MP test? Well, among other things, the following are in the spotlight:
     
    We’re seeing occasional black-boxing and car weirdness (as seen above) so we 100% need to crack down on this. Players can’t move after being shot We’ve got some item-duping on different events, like falls Player lighting (flashlights etc) isn’t synced Some SFX still aren’t matching up Lots of general improvement to connections, admin settings, chatbox etc.
      Other non-MP stuff done this week:
     
    Zombies can now pathfind through destroyable objects. They prefer to go around, but if there is no other path, they’ll thump on walls and crates, etc.
      (We are aware that, coupled with the zeds crawling beneath cars update in 41.50 this will be making your lives even more difficult – and are testing this to see how it plays and will be looking at ways to compensate for it, perhaps increased wall and object health etc)
     
    Some really promising optimization that should see a frame-rate and load time boost. General balance to: survivor zeds, loot spawn locations, item weights, some nutrition and whether or not you enjoy eating raw dead animals.
      SPIFFO’S FINAL THOUGHT:

    Although everything is looking very positive with the MP stuff PLEASE note that we still have a very long ‘to do’ list before we can consider a public IWBUMS beta release and Community Megatests.

    We are sorry for being such massive teases with this stuff, but we hope you’ll agree it’s better than radio silence.
    Also, don’t walk on campfires.
    A changelist of all IWBUMS patches since the 41 beta was released can be found here. A general list of stuff added to PZ, and vids of features being worked on, is kept here – so you don’t have to plough through endless dev blogs for info. The Centralized Block of Italicised Text would like to direct your attention to the PZ Wiki should you feel like editing or amending something, and the PZ Mailing List that can send you update notifications once builds get released. We also live on Twitter right here! Our Discord is open for chat and hijinks too!
  6. Spiffo
    Dr_Cox1911 got a reaction from leon2356 in Profession Framework Mod   
    @leon2356I quickly skimmed through the sourcecode and found a couple of mentions of Axeman.
    Don't know if these are all of them though:
    IsoGameCharacter.class
    protected float calculateCombatSpeed() { float f = 1.0F; HandWeapon handWeapon = null; if (getPrimaryHandItem() != null && getPrimaryHandItem() instanceof HandWeapon) { handWeapon = (HandWeapon)getPrimaryHandItem(); f *= ((HandWeapon)getPrimaryHandItem()).getBaseSpeed(); } WeaponType weaponType = WeaponType.getWeaponType(this); if (handWeapon != null && handWeapon.isTwoHandWeapon() && getSecondaryHandItem() != handWeapon) f *= 0.77F; if (handWeapon != null && this.Traits.Axeman.isSet() && handWeapon.getCategories().contains("Axe")) f *= getChopTreeSpeed(); f -= getMoodles().getMoodleLevel(MoodleType.Endurance) * 0.07F; f -= getMoodles().getMoodleLevel(MoodleType.HeavyLoad) * 0.07F; f += getWeaponLevel() * 0.03F; f += getPerkLevel(PerkFactory.Perks.Fitness) * 0.02F; f *= Rand.Next(1.1F, 1.2F); f *= this.combatSpeedModifier; f *= getArmsInjurySpeedModifier(); if (getBodyDamage() != null && getBodyDamage().getThermoregulator() != null) f *= getBodyDamage().getThermoregulator().getCombatModifier(); f = Math.min(1.6F, f); f = Math.max(0.8F, f); if (handWeapon != null && handWeapon.isTwoHandWeapon() && weaponType.type.equalsIgnoreCase("heavy")) f *= 1.2F; return f * GameTime.getAnimSpeedFix(); } public float getChopTreeSpeed() { return (this.Traits.Axeman.isSet() ? 1.25F : 1.0F) * GameTime.getAnimSpeedFix(); } HandWeapon.class
    public float getSpeedMod(IsoGameCharacter paramIsoGameCharacter) { if (this.ScriptItem.Categories.contains("Blunt")) { int i = paramIsoGameCharacter.getPerkLevel(PerkFactory.Perks.Blunt); if (i >= 10) return 0.65F; if (i >= 9) return 0.68F; if (i >= 8) return 0.71F; if (i >= 7) return 0.74F; if (i >= 6) return 0.77F; if (i >= 5) return 0.8F; if (i >= 4) return 0.83F; if (i >= 3) return 0.86F; if (i >= 2) return 0.9F; if (i >= 1) return 0.95F; } if (this.ScriptItem.Categories.contains("Axe")) { int i = paramIsoGameCharacter.getPerkLevel(PerkFactory.Perks.Axe); float f = 1.0F; if (paramIsoGameCharacter.Traits.Axeman.isSet()) f = 0.95F; if (i >= 10) return 0.65F * f; if (i >= 9) return 0.68F * f; if (i >= 8) return 0.71F * f; if (i >= 7) return 0.74F * f; if (i >= 6) return 0.77F * f; if (i >= 5) return 0.8F * f; if (i >= 4) return 0.83F * f; if (i >= 3) return 0.86F * f; if (i >= 2) return 0.9F * f; if (i >= 1) return 0.95F * f; return 1.0F * f; } if (this.ScriptItem.Categories.contains("Spear")) { int i = paramIsoGameCharacter.getPerkLevel(PerkFactory.Perks.Spear); if (i >= 10) return 0.65F; if (i >= 9) return 0.68F; if (i >= 8) return 0.71F; if (i >= 7) return 0.74F; if (i >= 6) return 0.77F; if (i >= 5) return 0.8F; if (i >= 4) return 0.83F; if (i >= 3) return 0.86F; if (i >= 2) return 0.9F; if (i >= 1) return 0.95F; } return 1.0F; } IsoTree
    public void WeaponHit(IsoGameCharacter paramIsoGameCharacter, HandWeapon paramHandWeapon) { int i = paramHandWeapon.getConditionLowerChance() * 2 + paramIsoGameCharacter.getMaintenanceMod(); if (!paramHandWeapon.getCategories().contains("Axe")) i = paramHandWeapon.getConditionLowerChance() / 2 + paramIsoGameCharacter.getMaintenanceMod(); if (Rand.NextBool(i)) paramHandWeapon.setCondition(paramHandWeapon.getCondition() - 1); paramIsoGameCharacter.getEmitter().playSound("ChopTree"); WorldSoundManager.instance.addSound(null, this.square.getX(), this.square.getY(), this.square.getZ(), 20, 20, true, 4.0F, 15.0F); setRenderEffect(RenderEffectType.Hit_Tree_Shudder, true); float f = paramHandWeapon.getTreeDamage(); if (paramIsoGameCharacter.Traits.Axeman.isSet() && paramHandWeapon.getCategories().contains("Axe")) f *= 1.5F; this.damage = (int)(this.damage - f); if (this.damage <= 0) { this.square.transmitRemoveItemFromSquare(this); paramIsoGameCharacter.getEmitter().playSound("FallingTree"); this.square.RecalcAllWithNeighbours(true); int j = this.LogYield; byte b; for (b = 0; b < j; b++) { this.square.AddWorldInventoryItem("Base.Log", 0.0F, 0.0F, 0.0F); if (Rand.Next(4) == 0) this.square.AddWorldInventoryItem("Base.TreeBranch", 0.0F, 0.0F, 0.0F); if (Rand.Next(4) == 0) this.square.AddWorldInventoryItem("Base.Twigs", 0.0F, 0.0F, 0.0F); } reset(); CellLoader.isoTreeCache.add(this); for (b = 0; b < IsoPlayer.numPlayers; ) { LosUtil.cachecleared[b] = true; b++; } IsoGridSquare.setRecalcLightTime(-1); GameTime.instance.lightSourceUpdate = 100.0F; LuaEventManager.triggerEvent("OnContainerUpdate"); } LuaEventManager.triggerEvent("OnWeaponHitTree", paramIsoGameCharacter, paramHandWeapon); } I guess those things you would have to mimic in Lua if a baseballbat is equipped and the character wielding it has your trait.
  7. Like
    Dr_Cox1911 reacted to Faalagorn in Ability to climb slanted tiles   
    I really liked the work being put to not fall through the slated tiles  being done some patches ago, where there's a code that generates floor beneath you.
     
    However, since we have stairs with the ability to walk on them to reach higher levels, why can't the same be added to all that slanted roof tiles? Moreover, the same could be used to have hills on map, I've noticed there's already some slanted grass and snow tiles in tilesets, so they could be used as well.
     
    Basically and TL;DR make slanted tiles behave like stairs.
  8. Pie
    Dr_Cox1911 got a reaction from K1dby in Random Mapzoid: Random Bitmap Terrain Generator (Python / Win Exe)   
    @mendoncaI have the same problem as @Peter Lion, the program doesn't do anything upon executing in Windows 10.
  9. Spiffo
    Dr_Cox1911 got a reaction from leon2356 in Profession Framework Mod   
    @WATTOThose are the perks for the current stable build 40.43:
     
  10. Like
    Dr_Cox1911 reacted to nasKo in IWBUMS 41.40 RELEASED   
  11. Like
    Dr_Cox1911 reacted to Mows1313 in Custom Sandbox skill level options.   
    So I've been messing around with all the sandbox options recently. I've been thinking about what if we could set it up so characters have skills at certain levels from the start. not only that but also lock some skills out so they can't be used and maybe even make it so some skills cannot be leveled up. 
    like have a drop down menu for each skill that sets their level or disables them and has a check box next to them to lock the skill at a certain level.
    Would allow for a lot more fun and challenge when making a custom game.
  12. Spiffo
    Dr_Cox1911 got a reaction from nasKo in Need help newbie on moding   
    Greetings Tangos!
     
    First things first: I've absolutely no knowledge about 3D-models in PZ, but I know a few basic things about modding in PZ (or at least where I can look for info 😁)
    In order to start modding PZ you should start with the basics, that is script-files for items and Lua for pretty much everything else.
    @Fenris_Wolfcreated an awesome beginners guide on github, after you have worked your way through this you should have some basic knowledge.
     
    The next crucial thing in my opinion is getting familiar with the base Lua files and the Java classes PZ ships with.
    For the Lua files you will simply need a texteditor to look at, but for the Java classes you will need something to decompile them. Other modders (me included) use JD-GUI for this.
     
    Next steps are: look at other mods that do similiar things that you want to achieve. There are so many awesome mods out there with good written code to look at. These will help you get started.
     
    That are for me the first steps to start modding in PZ. The other modders are very friendly and all chip in to help a fellow modder in need, so don't despair and either use the forum here or go to the official PZ Discord and participate in the modding-channel.
  13. Like
    Dr_Cox1911 got a reaction from Maris in [WIP] Mod Options   
    I did previously start something similiar myself. Are your mod options synced to clients as well?
     
    I previously wanted a way to let admins change some mod settings right through the game, so my framework consisted of a hookable UI that a mod can add a page to. These settings would then be transfered to the server and propagated to all clients.
     
    I never really got it done 100%.
  14. Pie
    Dr_Cox1911 reacted to Narrnika in Upgrade for SELECT MODS menu   
    List of changes:
     
    "BACK" button discards all changes; "ACCEPT" button applies all changes and start reload lua (even if there were no changes).
     
    Panel with filters and search:
    - button "Show all mods" resets all filters, but not search;
    - when reload lua, panel is reset to default state.
    List of mods:
    - be careful with "To favorites" and "Remove from favorites": after clicking "ACCEPT", favorite mods will be enabled in all saves; mods removed from favorites will be disabled in all saves;
    - icons are read from mod.info; image will be scaled to line-size (which depends on the font size); if no icon is assigned, the map-icon will be used for mods containing maps, and the "piece of cake" icon for all others;
    - mod states are written in brackets after the name, as well as displayed by a marker near icon and color of the text.
     
    Panel with preview:
    - if the image is one, then it will be stretched to the entire panel (saving aspect ratio);
    - if there are several images, then it can be leaf with mouse-wheel or clicking the side previews; clicking on central image will stretch it to fit the panel.
     
    Info panel:
    - can display description of the mod in current language - for this in mod.info file need <LANG:XX> command (XX - language code);
    - the rest of the information is placed in the collapsible block "Extra info"; besides mod-ID and require-list, from mod.info reading lines "modversion", "pzversion", "tags", "authors";
    - under the collapsible block there are links to local files of the mod, steam page and address specified in mod.info file in line "url".
    - at the very bottom - the button for editing custom tags that will be saved in the file (homedir)/Zomboid/Lua/saved_modtags.txt.
     
    Saving lists of enabled mods:
    - file (homedir)/Zomboid/Lua/saved_modlist.txt is used;
    - four preset lists: "Disable all mods" and current actives lists (global, last save and current save, if you went from the "SELECT SAVED GAME" panel);
    - mods marked as favorites ignore selection from this list (that is, "Disable all mods" is disable all mods, except for favorites).
     

    Notes:
    - mod works instead of original ModSelector.lua file
    - gamepad is almost not supported - only "BACK" and "ACCEPT" buttons (does anyone need this?)
    - button "Map Mod Priorty Order" removed - I did not find anything that would make it available (if it is still needed - write me how and where it should work)

    Mod in GitHub
    Mod in Steam
     
  15. Like
    Dr_Cox1911 got a reaction from ZombiesLoveBrainiacs in [WIP] more mod tags   
    Only thing that I see missing in your list is maybe something like "Framework". I think about something like @Fenris_WolfProfession Framework.
    I know that there aren't that many mods that would fit in this category, but maybe it's something to consider?
     
    Otherwise your list seems pretty complete and I can't think of anything else.
  16. Like
    Dr_Cox1911 reacted to Faalagorn in Wayland support (Linux) and Vulkan renderer   
    I haven't look very thoroughly whether or not it's possible to add those by manually replacing repsective files from LWJGL, but how hard would be adding support for Wayland on Linux and Vulkan renderer that are provided by LWJGL? I don't know what version of LWJGL PZ currently uses, but Wayland is there since LWJGL 3.1.4 (Nov 20, 2017)  and Vulkan since LWJGL 3.0.0 (Jun 3, 2016)? https://github.com/LWJGL/lwjgl3/releases
     
    Both could help with performance on respective platforms (Vulkan is not supported on Mac officially, though they can use MoltenVK for potentially better performance especially as OpenGL is currently being phased out from Macs in favor of Metal) while Wayland could help on newer Linux distros as it's slowly gaining more and more mainstream attention.
  17. Like
    Dr_Cox1911 reacted to Maris in Avoiding Runtime Errors   
    Okay, let's say you need DOUBLE INJECTION.
     
    Why would you need this? For example, you are a very neat modder and do not want to load the user's CPU, overwriting common game functions and making permanent injection. One of these functions is getText(). And you want to make temporary ninja injection.
     
    So we have to go a more complex way:
    local old_getText = nil local function new_getText(str,...) --You code (unsafe!) return old_getText(str,...) end local in_progress = false local old_render = SomeClass.render function SomeClass:render(...) --permanent injection if in_progress then if old_getText and getText == new_getText then getText = old_getText old_getText = nil end return old_render(self, ...) end old_getText = getText getText = new_getText --tempry second injection in_progress = true local result = old_render(self, ...) in_progress = false if old_getText then getText = old_getText end return result end  
    If something goes wrong, your feature just stop working and that's it. No further game errors.
     
    P.S. Specific function render() does not return a result (by meaning), so you may omit it in this case. But it's not a mistake. Usually you have to keep the result.
     
     
     
  18. Like
    Dr_Cox1911 got a reaction from Maris in [WIP] more mod tags   
    Only thing that I see missing in your list is maybe something like "Framework". I think about something like @Fenris_WolfProfession Framework.
    I know that there aren't that many mods that would fit in this category, but maybe it's something to consider?
     
    Otherwise your list seems pretty complete and I can't think of anything else.
  19. Like
    Dr_Cox1911 reacted to Maris in [WIP] more mod tags   
    At the very beginning, I just wanted to add the tag "Build 41".
    For myself, I solved this issue.
    But then I decided to go further and make a real mod "more_mod_tags" for other modders to add custom tags.
    https://steamcommunity.com/sharedfiles/filedetails/?id=2138864719
     
    But which tags should be there?
    This is the question.
    So I ask you about your ideas.
    I don't like too many tags, so I want to add just most popular and useful.
     
    Currently there are these tags:
    Build 41 Build 40 Multiplayer Interface Textures Models Vehicles Items Clothing Weapons Food Literature Medical Traits Building Bugfix Tweak Framework Language Easier Harder Realistic  
     
     
     
  20. pillow
    Dr_Cox1911 reacted to Batsphinx in [41.38] Tutorial Bugs Megathread   
    Only our game could have a bug that's "Mom and Dad are naked"... 😂
  21. Like
    Dr_Cox1911 reacted to nasKo in Zed Paddling   
    Lots of good work in the MP department this week, so let’s start there.
    Yuri and Andrei in the MP Strike Force have continued their work on their impressive zombie networking code, making some changes to the zombie updates sent to clients. This has allowed them to further reduce the amount of packets sent to clients for zombie movement.
    (Apologies if we get technical again here, but clearly that goes with the territory a bit.)
    Predictions in the new MP code are generally sent at least once per 4 seconds, with nothing more frequent than once per 650 ms – which is less than 2 a second.
    The current public PZ version sends between 2 and 6 updates per zombie per second, so the savings being made already are clearly noteworthy.
    If required, pathfinding will be carried out on the client so the zombie will know where to go without any need for information from the server (unless the zombie changes behaviour) if there are obstacles between the zombie and its target.
    Andrei and Yuri have also made a debugging interface that shows many and various useful details. Here’s a video demoing some of their latest work with extremely infrequent zombie update packets and very low network usage.
    Compare and contrast this with the other videos in recent blogs, and hopefully you’ll be able to see the high degree of progress.
    In the first part of the vid, Yuri shows the moving zombies debug interface: the graph shows any selected zombie, which is marked in the gameplay behind it with a red square. On the graph the MP Strike Force can then see that zed’s position on the server (yellow line), its target (predicted) position (orange line) and its position on the client (pink line). The second part of the video then shows the new zombie update settings interface.
    There are still many challenges to face and fix, but the guys are certainly currently on track for a much more stable and efficient MP foundation. Our thanks to all the Strike Force for their hard work and sage guidance in this ongoing quest!
    IWBUMS 41.38
    The new version is almost ready for a release into the public IWBUMS beta, but we’re still putting the new tutorial through its paces to gain polish and breakage feedback – as we’d rather it go out and have people enjoy it rather than report in with a deluge of ways in which they got stuck or irritated by obvious game-breakers.
    Here’s a quick image from the expanded tutorial by way of compensation.
    You can probably anticipate 41.38’s beta release early next week. Current (and now final) content also includes:
    Radial menu for reloading firearms and spare magazines. New clutter visuals and overlay sprites to provide more visual variety Briefcases, flip flops and fanny packs (bum bags for those not American) Vehicle memory optimization, which has allowed blood to be shown gathering on vehicles. Blood can be washed off with water, but is not yet washed off by rain. Composting fixes and polish Worldflares system made available to modders (coloring/lighting up of a local area in a radius) Tweaked female models, and different hairstyles for both male and female appearances – including curly hair and ‘The Rachel’ what with this being in the 90s Latest community translations, including a general pass over the English UI skew to standardise and improve things.  ‘Fill all’ option for multiple bottles. Empty bleach bottles that can be refilled with water. Too many other fixes, nips and tucks to list as there’s been a long build-up of them as this patch has been long in the gestation. They cover areas like: split-screen issues on sleeping, movable items, horizontal rain, tripped sprinter zombies, vehicle windows, saved outfits, flashlights and lots more. Thanks all, see you early next week for the patch release hopefully. We’ve made the tutorial quite fun so hopefully it’ll be an engaging playthrough for our existing playerbase as well as the newer survivors.
    This week’s changing room sports gear from Starbug. A changelist of all IWBUMS patches since the 41 beta was released can be found here. A general list of stuff added to PZ, and vids of features being worked on, is kept here – so you don’t have to plough through endless dev blogs for info. The Centralized Block of Italicised Text would like to direct your attention to the PZ Wiki should you feel like editing or amending something, and the PZ Mailing List that can send blogs like this and patch notes direct to your mailbox. We also live on Twitter right here! Our Discord is open for chat and hijinks too!
  22. Like
    Dr_Cox1911 reacted to Maris in Avoiding Runtime Errors   
    Let's say there is a critical game function "render":
    function SomeClass:render() --Game code (safe) end  
    And you want to inject into it.
    As you know, replacing the whole function is bad practice.
    Therefore, the injection in your mod will look something like this:
    local old_fn = SomeClass.render SomeClass.render = function(self, ...) --Your code (unsafe) return old_fn(self, ...) end  
    The main difficulty is that your code may contain errors with a high chance. And if something goes wrong, the user will receive a ton of red errors or the game will freeze because the function is critical and is called roughly every tick.
     
    So you want at least stop spam of errors if something went wrong.
     
    There is a solution!
    local in_progress = false local old_fn = SomeClass.render SomeClass.render = function(self, ...) if in_progress then return old_fn(self, ...) end in_progress = true --Your code (unsafe) in_progress = false return old_fn(self, ...) end  
    Actually, this code was created in order to avoid recursion. But as a side effect, it allows to bypass the storm of errors. If something breaks the mod, then the mod just stops working, and the game continues without further errors.
     
     
     
  23. Like
    Dr_Cox1911 got a reaction from leon2356 in Profession Framework Mod   
    @leon2356Will try it out! I have one small suggestion though, you should add the profession framework as a dependency for your workshop mod, so that if people subscribe to your mod they automatically get PFM.
     
    @Fenris_WolfShould I bump the version on the workshop?
  24. Like
    Dr_Cox1911 reacted to poodude28 in Make Road Signs Readable   
    Here's an example of a road sign that should be readable in the new update.
    https://steamcommunity.com/sharedfiles/filedetails/?id=2024767993
    It would help people with navigation, and would be that extra bit of immersion.
  25. Spiffo
    Dr_Cox1911 got a reaction from Hilrof in Zed Packets   
    So much glory MP news! Can't wait to dive in deep again.
×
×
  • Create New...