Jump to content
The Dark Mod Forums

snatcher

Member
  • Posts

    921
  • Joined

  • Last visited

  • Days Won

    15

Everything posted by snatcher

  1. Anything but reliable, unfortunately. Sorry but I wouldn't waste time discussing the how: it happens by chance very rarely and I cannot guarantee anything except that I will do my best to crash my game as many times as I can. I need direction on how to get useful data out of the crash. Can someone prepare an ad-hoc exe, perhaps? That link you shared scares the hell out of me. As a start, I didn't receive a crash dump
  2. It probably is more clear this way. Press "attack" at that moment and 5P is the last line in the console before the crash. Always. void weapon_arrow::Idle() { sys.println(" ***** 5 *****"); weaponReady(); sys.println(" ***** 5A *****"); player owner = getOwner(); sys.println(" ***** 5B *****"); // Switch to lower if weapon is not allowed right now if (owner.getImmobilization("") & IM_ATTACK_RANGED) { sys.println(" ***** 5C *****"); weaponState( "Lower", ARROW_IDLE_TO_LOWER ); sys.println(" ***** 5D *****"); } sys.println(" ***** 5E *****"); playCycle( ANIMCHANNEL_ALL, "idle" ); sys.println(" ***** 5F *****"); while( 1 ) { sys.println(" ***** 5G *****"); if ( WEAPON_LOWERWEAPON ) { sys.println(" ***** 5H *****"); weaponState( "Lower", ARROW_IDLE_TO_LOWER ); sys.println(" ***** 5I *****"); } sys.println(" ***** 5J *****"); if ( WEAPON_ATTACK ) { sys.println(" ***** 5K *****"); weaponState( "Fire", ARROW_IDLE_TO_FIRE ); sys.println(" ***** 5L *****"); } sys.println(" ***** 5M *****"); if (owner.getImmobilization("") & IM_ATTACK_RANGED) { sys.println(" ***** 5N *****"); weaponState( "Lower", ARROW_IDLE_TO_LOWER ); sys.println(" ***** 5O *****"); } // LAST PRINT OUT BEFORE THE CRASH sys.println(" ***** 5P *****"); // waitFrame(); sys.wait(0.0166667); sys.println(" ***** 5Q *****"); } sys.println(" ***** 5R *****"); }
  3. @stgatilov I can reproduce this bug. TDM 2.11a. No mods. There isn't a specific mission, spot or situation but I identified some patterns and I eventually get the game to crash. In tdm_weapon_arrow.script I get the last print out in the console right before this sys.wait(). TDM then crashes. This perhaps doesn't mean much because many things are going on elsewhere at this point in time. I don't want to go the enable/disable settings route to further troubleshoot the problem: I can make the game crash. How do I get more more info for you from, I don't know, the binaries? Windows event log: Faulting application name: TheDarkModx64.exe, version: 2.0.11.0, time stamp: 0x63d6c10d Faulting module name: TheDarkModx64.exe, version: 2.0.11.0, time stamp: 0x63d6c10d Exception code: 0xc0000005 Fault offset: 0x0000000000415e1f Faulting process id: 0x26f4 Faulting application start time: 0x01d9d66c90204ea7 Faulting application path: H:\GAMES\The Dark Mod\TheDarkModx64.exe Faulting module path: H:\GAMES\The Dark Mod\TheDarkModx64.exe Report Id: 3f3944ab-8451-4c1b-835a-11c984202c47 Faulting package full name: Faulting package-relative application ID:
  4. This is a loop: while (1) { sys.waitFrame(); } Place them before your "while". Now, if you don't want to "mute objects" then don't include these pieces of code: string grabbed_sound = ""; -------------------------------------------- grabbed_sound = grabbed_entity.getKey("no_bounce_sound"); grabbed_entity.setKey("no_bounce_sound", "1"); -------------------------------------------- if (!grabbed_entity.isType("idAFEntity_Base")) grabbed_entity.setKey("no_bounce_sound", grabbed_sound);
  5. @wesp5 The below must be initiated before the loop begins. You very likely included them within the loop! boolean grabbed_check = false; entity grabbed_entity = $null_entity; string grabbed_sound = "";
  6. TDM Modpack v3.5 released in the opening post Starting with this update you no longer need to "shoulder" a body to get to see the tag (name/status) at the bottom, just grab (frob) the body and there you have it: This feature has been included in the "Quiet Objects" mod, which is now called "Smart Objects", and it also works with droppable inventory items: --------------------------------------------------------------------------- v3.5 also introduces the initial release of the "Hunter Bow" mod. Some missions alter the properties of the bow to make it draw arrows faster and I thought there must be some demand out there for such mod. Enable the Hunter Bow mod and you will draw the bow faster in all missions. The Hunter Bow mod is entirely optional: --------------------------------------------------------------------------- On a side note I made progress with "Alchemy" and arrow effects now fade out nicely (finally!). The approach employed allows me to script any effect and/or event and I should be able now to produce more arrow types. We already have Night & Day and I am thinking we could probably have and Order & Chaos combo... we shall see. Oh, the "Moonlight" arrow or recipe has been renamed to "Starlight", which seems like a tighter name. I hope you have fun with this new version. Here is the full changelog: ============================== v3.5 - New release ------------------------------ • SMART OBJECTS MOD v1.1: AI status/names and some item names are displayed onscreen when grabbed. • PLAYER SKILLS MOD - MANIPULATION v1.8: Proper support for sconce_2candles_rigid (around 40 flames). • PLAYER SKILLS MOD - COMBINATION v1.2: Arrow effects fade out nicely now. Improved FX. • HUNTER BOW MOD v1.0: Initial release • (Internal) Code adjustments. Cheers!
  7. The way I see it is that when playing a game for the first time players always play the vanilla version. Exceptions are when a game is known for critical bugs or old enough that requires a fix or patch to run properly but regardless, players don't mod games on their first run. Now, playing a game a second time opens up a whole new scenario and here is where mods spice things up: play the same but differently. Here is an idea. The Augmented are qualified players from a future, cyberpunk era. Augmented participate in simulations by impersonating a character and in the Mircea complex the Augmented line up for the upcoming Tournament: The Dark Module. Equipment, mechanics and rules differ from module to module but all games share the same, single goal: complete a simulation as fast as possible. Now, if you like this premise then the Augmentation Mod must be built around the one rule: get to the Mission Complete as fast as you can. In order to make the most out of the limb damage system I suggest a kind of weak character with outstanding healing capabilities. And since the mod is about speed I suggest players level up or level down in accordance with how much they run.
  8. You alone you think? "Augmentation Mod" sounds fitting and even catchy. Let's have that as the working title, until you come up with a more suitable name. We have a name and now we need purpose. The Augmentation Mod was supposed to be part of a campaign of yours of some sort that might never see the light. Why would players want to play with this mod in TDM "as is" today? What's the story behind all this? How come this dude or thing with this, never seen before abilities, landed in this world? Does he come from a past that never was or from a future? colliding parallel universes? What's his mission? If you/we don't figure it out, we aren't going to be able to sell it.
  9. Yep. It does. MirceaKitsune's mod can perfectly be its own thing.
  10. @MirceaKitsune Can you give your baby (v3) a marketable name or acronym, please?
  11. Holy crap - I didn't know this existed! I just placed v3 in my root folder and it works! I am astonished by the amount of ideas you put into this. Execution looks extremely professional! I don't know what to make of it but I am speechless, @MirceaKitsune !
  12. Hi MirceaKitsune, This whole thread mainly is about the TDM Modpack (I acknowledge the title can be misleading). This probably isn't the place for the Keypad but you and your mod are welcome here. The TDM Modpack is limited to mods that can be used right away and with ease by players in existing missions. Your keypad must be thoughtfully and carefully integrated into a map therefore such mod isn't suited for the Modpack. @wesp5's Unofficial Patch includes, among other features, tools for mappers such as a flint, an invisibility potion... and even prefabs although I am not sure if these are new or updated versions. I can support your work and I am happy to try and collaborate where I can but having a mod formally integrated into TDM is out of my reach. Either you have the contacts or you get lucky and your mod is found of interest by someone with the knowledge and/or the power. I would definitely like to see your Keypad featuring in future missions and while I can hardly put two brushes together in DarkRadiant I will have a look at it. My suggestion to increase your chances is to provide a small test map along with the mod to showcase your work. Why you talented people aim so high. Build something small that is complete on its own. Release. Expand your something and make the current whole complete on its own. Release. Expand...
  13. but There is a WIP script a few posts back that includes the feature already (along with other stuff) but I still have to make some decisions and test it to some extent before including in the Modpack for general use. The solution doesn't touch any def or anything and theory says it should work in 99% of the situations. As usual, feel free to do with it what you please.
  14. Why do I have to shoulder entities to get to know their status (KO/dead), or their name (Mr Bad)? The reason we are talking all this is because I wanted to display the "shouldering name" of AI on frob. As soon as the goal was achieved I wondered about non-AI names and here we are. Precisely. A chair is a chair and an apple is an apple. Most of us will see it as redundant and conclude it is pointless or useless. I am not yet ready to give up so let's go beyond the obvious: does having a little tag at the bottom go in detriment of the intended experience? This must be difficult to answer because, I guess, it needs to be experienced. Another little concern in my list is that sometimes you cannot tell if you are holding an object or not. Having a name can help in these situations.
  15. It took me five minutes to (quickly) "name" moveables in tdm_moveable_kitchen.def What do you think?
  16. You are 100% correct. An object requires both in order to land into the inventory. Regarding the rest, I agree with your points but I still don't disagree with other options. I keep wondering to myself, what would have happened if object names had been displayed from day one? Would it had been questioned or would we all be totally ok with it today?
  17. Here is my current WIP script. It is ready for "obj_name_tdm" and "obj_name_map" spawnargs but mind you: it is stripped from other stuff and it still includes other stuff I am testing. boolean holding_check = false; entity entity_held = $null_entity; if ($player1.heldEntity() != $null_entity) { if (!holding_check) { string invMessage; entity_held = $player1.heldEntity(); if (entity_held.getBoolKey("shoulderable")) { invMessage = "#str_02410"; // Assume "Body" if (entity_held.getHealth() > 0) { if (entity_held.getKey("shouldered_name") != "") invMessage = entity_held.getKey("shouldered_name"); } else { if (entity_held.getKey("shouldered_name_dead") != "") invMessage = entity_held.getKey("shouldered_name_dead"); } } else { invMessage = "Object"; // Assume "Object" (no translation) if (entity_held.isType("idAI")) invMessage = "#str_02410"; // Assume "Body" if (entity_held.getKey("obj_name_tdm") != "") invMessage = entity_held.getKey("obj_name_tdm"); if (entity_held.getKey("obj_name_map") != "") invMessage = entity_held.getKey("obj_name_map"); if (entity_held.getKey("inv_name") != "") invMessage = entity_held.getKey("inv_name"); } $player1.setGuiString($player1.getInventoryOverlay(), "InventoryPickUpMessageText", ""); $player1.setGuiString($player1.getInventoryOverlay(), "GrabbedItemName", sys.translate(invMessage)); holding_check = true; } } else if (holding_check) { if ($player1.getShouldered() == $null_entity) $player1.setGuiString($player1.getInventoryOverlay(), "GrabbedItemName", ""); holding_check = false; }
  18. Good point. My current script takes care of objects with "inv_name" already (as a separate item).
  19. As of today, if I recall well, moveables with a populated "inv_name" will go into your inventory. It's the condition, I think. Repurposing "inv_name" is a technical challenge (large or small I don't know). Building a new layer on top of everything should yield faster, safer results. Experienced developers surely can provide good advise.
  20. Mappers can name items that go into the inventory or use elaborated tricks such as when you frob a book and get the title onscreen. We are talking useless junk you interact with but you are right, @wesp5. For this initiative to succeed it must be consistent throughout all stages. At this early stage we cannot allow players to grab a chair that has a name but the next, slight different chair, hasn't got a name. Therefore there must be a short term vision and long term vision. Objects must have at least two new spawnargs: "obj_name_tdm" "Bottle of Wine" // Default "obj_name_map" "Cabernet Sauvignon" // Custom (by mapper) To simplify it let's call these args TDM and MAP. MAP is for mappers to populate if they wish and it will always take preference over TDM. During the short term stage only objects named by a mapper (MAP) will be displayed onscreen when grabbing that object. TDM contains the default core name, and at this stage it never is displayed. We will carry on populating TDM internally and with time we should reach a point where all core TDM are populated. What will we do next? I have no idea. Are we close or far from 90% of objects? Should we enable TDM by default? (remember MAP takes preference over TDM). Regardless of the eventual outcome or decision, core items will have a proper name and who knows if this brings other ideas or initiatives.
  21. Core items should cover a good-enough number of moveables in all mission. There normally isn't that much junk and it normally is the same and it is found in the same places: kitchen, bathroom, bedroom... Would mappers complain if all of a sudden a "Stool" is described as a "Stool"? Things change though when a mapper decides a "Brush" becomes "Penelope's Brush". A useless item still, but more power to tell a story through everyday objects. It's all in there already: the "shouldered name" slot in the HUD. It works perfectly fine via script although it would be better to have it built-in. Regardless: no names, no game
  22. I mean names you can display on screen for the general audience when holding an object. Refer to the screenshots I posted. ------------------------------------------------ I would say we should employ the language/translation system (#str_). I expect most entityDef names (plus model names) are quite descriptive already: atdm:moveable_bowl_large_pewter (bowl01_large.lwo) atdm:moveable_mug_wood_old (mug_wooden01.lwo) atdm:moveable_ball_spiked (spiked_ball.lwo) atdm:moveable_coffeetable (coffeetable1.lwo) atdm:moveable_rock_small01 (smallrock1.lwo) ... When in doubt just fire up DR and see the object in question. Thinking of skins we should avoid including names of materials or colors, in example instead of a "Red Apple", stick to "Apple". Instead of "Pine Chair", let's name it a "Chair". Many times it will be difficult to settle on a name therefore simpler/shorter will be better: up to mappers to spice things up. Now if you ask me, how do we approach existing missions? No idea, haven't thought of it. And bound items such as candles and candle-holders? I don't know, Candle? One case at a time, I guess.
  23. Far from crazy. Just like with any other project we must start somewhere: settle on some basic rules and start naming core objects. The rest will evolve naturally. 5 people * 20 names per day (each) = 1000 assets in 10 days.
×
×
  • Create New...