Heavenfall Posted September 18, 2013 Share Posted September 18, 2013 Mod released: http://forums.kleientertainment.com/index.php?/files/file/309-rpg-items/ http://steamcommunity.com/sharedfiles/filedetails/?id=180486675 Link to comment Share on other sites More sharing options...
Battal Posted September 18, 2013 Share Posted September 18, 2013 This looks really neat! It'll definitely add more excitement to crafting things, much like in Terraria. I look forward to this mod! Link to comment Share on other sites More sharing options...
RCatta Posted September 18, 2013 Share Posted September 18, 2013 I'm tinkering with a mod and I'd love to hear people's thoughts about it. I started this mod because it annoyed me that every axe is identical in function to every other axe (and so on for every item). In RPG games you can usually find several different versions of the same weapon, which makes it fun to actually find three or four axes in a row. So what I'd thought I'd do is introduce a similar system here, but more tuned to Don't Starve. My basic idea is that each found or crafted weapon or armor has a 20% chance to gain a magic property. The player can examine items to see what items have magic properties, but to see which one it is the player has to "identify" the item using a looking glass. Once identified, examining the item will reveal what effect it has. The item can be used before it is identified, and the effect is active even if not identified. Effects scale with the strength of the item (a hammer that sets target on fire won't make them burn long, but a nightmare sword will). Effects do not change the graphics used for the items. Weapon effects:Igniter - sometimes sets targets on fireFreezer - sometimes freezes targetsShrinker - sometimes shrinks targetsLifesteal - sometimes steals health from targetsTeleporter - sometimes teleports targets a short distance awayVorpal - sometimes instantly kills targetsSharp - 10% more damage dealtBlessed - 25% more damage dealtDurable - Item lasts 50% longerTerrifying - sometimes causes target to panic Armor/Hat effects:Insulation - helps keep warm in winterDapperness - provides sanity bonusesBlessed - increases the damage reductionFireproof - decreases damage from fireDurable - item lasts 50% longerStrider - reduces hunger drain while wornTeleporter - sometimes teleports the wearer away when hit Some other ideas I was toying with as well:1) Cursed items, ie negative effects. It might be interesting in combination with the need to make a looking glass to identify items.2) Some kind of buildable magical forge (like the ruins forge) that increases the chance of getting a magical effect when crafting3) A similar system for for monsters found in the world, so each monster would be customized in some direction (more health / fire immunity / extra speed / summons friends) Anyway, I'd love to hear your thoughts on an item system like this. Also if anyone has any ideas for other types of effects I'm all ears. This is actually a cool idea. I could help you with development if you want . Also , you sure you want items to look the same regardless of magic enhancement ? Link to comment Share on other sites More sharing options...
Malacath Posted September 18, 2013 Share Posted September 18, 2013 When I saw a [WIP] by Heavenfall I knew it would be something interesting, and I was not disappointed ^^I actually never thought about it but now that you mention it it seems boring to me that every axe is just an axe...But then again why would my axe be magic when I craft it myself? MAybe I found a magic rock? But then again I could also identify the rock and then decide if I would prefer to create a spear or an axe from it. Do you see where I'm heading to ; ) I just think that this would potentially increase the work to be done dramatically. I also think that adding some negative effects to balance the whole thing would make sense since the need for an inspection-glass is really limited then. Using the weapon for a bit will make it obvious. Of course a Self-Vorpal is a no-go, but I'm sure you see that yourself ^^ Anyway I think this will be a great mod, especially when a talented person like you works on it! @RCatta Since when does Heavenfall need help? : P Link to comment Share on other sites More sharing options...
RCatta Posted September 18, 2013 Share Posted September 18, 2013 @RCatta Since when does Heavenfall need help? : P I said I'd help if he wants not if he needs . It'd be ready faster , that was the point . Link to comment Share on other sites More sharing options...
Heavenfall Posted September 18, 2013 Author Share Posted September 18, 2013 I prefer to work on my own, but thanks for the offer. Why is one axe different from another axe? That's just how RPGs work I guess. A slightly higher damage from some attribute and a good roll. I guess if you want a "Don't Starve" explanation then each individual reagent used is unique - it contains impurities and perhaps hidden features that you didn't know about. Link to comment Share on other sites More sharing options...
Heavenfall Posted September 18, 2013 Author Share Posted September 18, 2013 Also , you sure you want items to look the same regardless of magic enhancement ? The reason I want to avoid that is that I can keep it completely modular if I don't add any graphics. If all I need in modmain.lua isfunction HF_addrpgweapon(inst) inst:AddComponent("rpgweapon")endAddPrefabPostInit("axe", HF_addrpgweapon) then that is a huge success for me. Link to comment Share on other sites More sharing options...
Neosaurus Posted September 18, 2013 Share Posted September 18, 2013 Looking forward to it! Link to comment Share on other sites More sharing options...
RCatta Posted September 18, 2013 Share Posted September 18, 2013 The reason I want to avoid that is that I can keep it completely modular if I don't add any graphics. If all I need in modmain.lua is Of course.And it should be still doable. I'm assuming you'd want to add some sort of Identify function to your items , so you should be able to use: inst.AnimState:SetBank("identifieditembank") inst.AnimState:SetBuild("identifieditembuild") inst.AnimState:PlayAnimation("idle") Link to comment Share on other sites More sharing options...
Heavenfall Posted September 18, 2013 Author Share Posted September 18, 2013 @RCatta modular means I want it to work seamlessly with other mods as well. I load last, sort through prefabs and apply to weapon/armor items. I can't do that if I want graphics. Also, really we're talking about 200+ new swap files and probably as many icons. I see this more as a fun script and not really worthy of spending that kind of time. Link to comment Share on other sites More sharing options...
simplex Posted September 18, 2013 Share Posted September 18, 2013 Of course.And it should be still doable. I'm assuming you'd want to add some sort of Identify function to your items , so you should be able to use: inst.AnimState:SetBank("identifieditembank") inst.AnimState:SetBuild("identifieditembuild") inst.AnimState:PlayAnimation("idle")This would require making a custom build (the bank itself shouldn't change) for every magical item times the number of its possible effects...If HF were to add a special effect to each magic property, it'd be better to create a prefab just for the effect, and then, assuming it were to only show when the item is equipped, he'd do (for weapons, for armor it'd be slightly different):local fx_inst = SpawnPrefab("my_current_fx_prefab")fx_inst.persists = falselocal follower = fx_inst.entity:AddFollower()follower:FollowSymbol( GetPlayer().GUID, "swap_object", offset_x, offset_y, offset_z )EDIT: Of course, it'd be better to use the entity equipping it instead of GetPlayer(), so that the system would be compatible with, say, giving magical hats to pigs. Link to comment Share on other sites More sharing options...
Heavenfall Posted September 18, 2013 Author Share Posted September 18, 2013 @simplex I hadn't thought of that! I'll look into it after the scripts are done. Link to comment Share on other sites More sharing options...
simplex Posted September 18, 2013 Share Posted September 18, 2013 @simplex I hadn't thought of that! I'll look into it after the scripts are done. (: But if you're thinking about doing something like that, it'll be easier to group right from the start the items according to which animation symbol they override: swap_object, swap_hat or swap_body. EDIT: Actually, I don't think you need to group them at all. You could just have the component peek at the equip slot defined in the equippable component. But anyway, this is cosmetic, worry about it (or not ) once the functionality is there. Link to comment Share on other sites More sharing options...
Zaran Posted September 18, 2013 Share Posted September 18, 2013 Looking forward to it Will be interesting to accidentally shrink spider queen or deerclops,and as much laughs as setting forest on fires while chopping woods Potential curse;-sanity drain, quite vanilla-hunger drain, harder to detect - add "monster" tag, so pigs suddenly become hostile- food rot accelerated/ instant Link to comment Share on other sites More sharing options...
TheDanaAddams Posted September 19, 2013 Share Posted September 19, 2013 @RCatta modular means I want it to work seamlessly with other mods as well. I load last, sort through prefabs and apply to weapon/armor items. I can't do that if I want graphics. Also, really we're talking about 200+ new swap files and probably as many icons. I see this more as a fun script and not really worthy of spending that kind of time.So does this mean that this mod would be compatible with even custom weapons/armour? I've been tossing around the idea of an "age of steel" mod for a while, now, which would ideally function as an extensible "framework" of sorts.Introduce new minable metal resources, and encourage others to create additional items that make use of them. Obviously, that would include weapons and armour.Furthermore, if it does run through all mod items... can you add an "exclusion" tag?I ask mainly because I don't want to end up with a random buff on Link's unique items.(He's quite strong enough as it is, without accidentally getting a shield that slows his hunger rate, or a boomerang that could instant-kill enemies before they even get near you. I imagine all you'd need to do is add an "if not inst.HasTag:"ignoreRPGItems" then ..." while on our mods, we can just add "inst.AddTag:"IgnoreRPGItems" " or something. As a suggestion, would it be possible for the items to be given a prefix identifying their kind?It would be very helpful if the inventory shows "Blessed Axe" and "Sharp Axe" rather than two instances of "Axe" that aren't at all visually different. Also, if I may be so bold as to suggest some more... RPG-sounding titles for the effects, especially in a refix-suitable context:Weapon effects:Flame - sometimes sets targets on fireFrost - sometimes freezes targetsMinimising - sometimes shrinks targetsVampiric - sometimes steals health from targetsTelelocating - sometimes teleports targets a short distance awayVorpal - sometimes instantly kills targetsRazor - 10% more damage dealtBlessed - 25% more damage dealtSturdy - Item lasts 50% longerTerrifying - sometimes causes target to panic Armor/Hat effects:Cozy - helps keep warm in winterDapper - provides sanity bonusesBlessed - increases the damage reductionFireproof - decreases damage from fireSturdy - item lasts 50% longerFaster's - reduces hunger drain while wornTelelocating - sometimes teleports the wearer away when hit This sounds really fun and interesting, so I'm definitely looking forward to it! Link to comment Share on other sites More sharing options...
Heavenfall Posted September 19, 2013 Author Share Posted September 19, 2013 @TheDanaAddams Yes, the goal would be that it integrates with other mods as well. Obviously there's going to be limits and I'm sure bugs will come up as a result, but I think if I write it right it should work. Sure, we can do an ignore switch if you want to. I don't think making it a tag serves a purpose, you can just do inst.ignorerpgeffects = true in the prefab function. Right now I have the explanation in the examine text, because the functions that govern what text appears when you hover over stuff is a LOT more complicated to hook in to. The actual effect names are never displayed, I just display what the effect does at the moment. But if I can work it I will use your suggested names, thank you for those. Link to comment Share on other sites More sharing options...
TheDanaAddams Posted September 19, 2013 Share Posted September 19, 2013 Ah, if that works, that's fine - I just knew that using a tag wouldn't cause problems if the user wasn't using the RPG Items mod.I don't really know much about all this code stuff - that was just the first thing I could think of that would maybe work. =3 Simplex was able to put together this bit of code that changed the displayed action on mouseover. I wanted the potions to read "drink" instead of "eat" - perhaps take a look at that, and see if you could do the same for names?It seemed to accommodate wildcard characters...I have no idea if it will be able to work for this purpose. Simplex's vast knowledge of the arcane arts of coding leaves me staring at a block of text that does a thing that I want it to do. I don't really know how it works. I just admire the glyphs and ominous glowing. ;P Link to comment Share on other sites More sharing options...
Heavenfall Posted September 20, 2013 Author Share Posted September 20, 2013 @TheDanaAddams I wasn't able to work the component for every item (custom and vanilla). The prefabs list isn't populated until after mods are loaded, and then it is too late to add to the prefab functions. Instead of loading last, I will load first. Then if anyone wants to add the effects to an item in their own mod you can do if GLOBAL.STRINGS.NAMES.MAGNIFYINGGLASS then AddPrefabPostInit("myweapon1", function(inst) inst:AddComponent("rpgweapon") end) AddPrefabPostInit("myweapon2", function(inst) inst:AddComponent("rpgweapon") end) AddPrefabPostInit("myarmor1", function(inst) inst:AddComponent("rpgarmor") end) AddPrefabPostInit("myhat1", function(inst) inst:AddComponent("rpgarmor") end)end and it will add the component if this mod is already loaded I was able to alter the hover-text like you suggested, so now if you have an unidentified item it saysAxe (?)and then it is changed to something likeFreezing Axe when identified. As before, examining the item will give more details. Link to comment Share on other sites More sharing options...
TheDanaAddams Posted September 20, 2013 Share Posted September 20, 2013 Awesome! Shame that it won't auto-detect mod items - but an "opt-in" is preferable to no "opt-out," in my opinion.Sounds like it's coming along nicely! ^^ Link to comment Share on other sites More sharing options...
TheHockeyGods Posted September 20, 2013 Share Posted September 20, 2013 Are the affixes only going to be prefixes? To me "Telelocating" sounds funny as a prefix and would be much better suited as a suffix. Perhaps if your lucky enough you could get a prefix and suffix? Such as a Vampiric Axe of Telelocating. Oh, and here are some suggestions on RPG flavor gear modifications listed in the order that I believe the word has a more powerful connotation: Prefixes: Weapons:Damage:GlintingBurnishedPolishedHonedGleamingAnnealedRazor SharpTemperedFlaring FireHeatedSmolderingSmokingBurningFlamingScorchingIncineratingBlastingCremating IceFrostedChilledIcyFrigidFreezingFrozenGlaciatedPolarEntombing LightningHummingBuzzingSnappingCracklingSparkingArcingShockingDischargingElectrocuting Armor/hats:Damage ReductionLacqueredReinforcedLayeredStuddedLobsteredRibbedButtressedFortifiedPlatedSolidCarapacedGirdedCarapacedImpregnable Damage Reflection:ThornySpinyBarbedJagged Life Increase or RegenHealthySanguineStalwartStoutRobustRotundVirileAthlete'sFecundVigorous Movement SpeedRunner'sSprinter'sStallion'sGazelle'sCheetah's Suffixes: Weapons:Attack Speedof Steadinessof Accuracyof PrecisionOverall Betterof Skillof Easeof Masteryof Renownof Acclaimof Fameof Infamyof Grandmasteryof CelebrationOccasional Critical Strikeof Stingingof Piercingof Puncturingof Penetratingof Incisionof Destructionof UnmakingFireof Embersof Coalsof Cindersof Flamesof Immolationof AshesIceof Snowof Sleetof Iceof Rimeof Floeof GlaciationLightingof Sparksof Staticof Electricityof Voltageof Dischargeof ArcingStaff Effectivenessof Calmof Concentrationof Focusof Studyof Clear Mind Universal:Lightof Shiningof Lightof RadianceQuantity of Item Dropsof CollectingQuality of Item Dropsof Plunder Some similar were suggested I believe, but I figured I'd throw 'em in anyway. Link to comment Share on other sites More sharing options...
Heavenfall Posted September 20, 2013 Author Share Posted September 20, 2013 I'm going to settle for 1 prefix from the start, because I don't want a 1 in 100 chance to get something extremely op from the start. Maybe a suffix would be something that could come from the forge that may or may not show up at a later time. I'm also going to use a non-random naming system, so a freezing axe has the same effect as a freezing shovel. I want to do as many unique effects as possible, so it's important that they can be identified by their name immediately. Link to comment Share on other sites More sharing options...
TheDanaAddams Posted September 20, 2013 Share Posted September 20, 2013 I don't know about having double-effect items... I mean, especially if you get something like a "Frost Axe of Flame" - what happens then? xD I'm definitely in favour of the non-random names - being able to identify the feature by prefix is an important usability feature, in my opinion. (And as a rebuttal, "Telelocating" to me sounds like an odd suffix. - If it is decided to go that route, what would make more sense to me grammatically would be "... of Telelocation." But I'm nitpicking. xD) Link to comment Share on other sites More sharing options...
Heavenfall Posted September 20, 2013 Author Share Posted September 20, 2013 Here's an alpha if someone wants to try it out. https://dl.dropboxusercontent.com/u/32649007/HF_rpgitemsv01.rar Link to comment Share on other sites More sharing options...
TheHockeyGods Posted September 21, 2013 Share Posted September 21, 2013 I'm going to settle for 1 prefix from the start, because I don't want a 1 in 100 chance to get something extremely op from the start. Maybe a suffix would be something that could come from the forge that may or may not show up at a later time. I'm also going to use a non-random naming system, so a freezing axe has the same effect as a freezing shovel. I want to do as many unique effects as possible, so it's important that they can be identified by their name immediately. Perhaps I should have been more clear. I did not intend each word to be associated to different things, just that as you got further in each list the effects would become more powerful.To be more clear I will use the Ice prefixes as an example. Frosted - Would have a low chance to freeze enemies with any weapon.Chilled - Would have a medium chance to freeze enemies with any weapon.Icy - Would have a high chance to freeze enemies with any weapon.Frigid - Would always freeze enemies with any weapon.Freezing - Would always freeze enemies and would freeze them for a little longer than usual with any weapon.Frozen - Would always freeze enemies and would freeze them for a while with any weapon.Glaciated - Would always freeze enemies and would freeze them for a long time with any weapon.Polar - Would always freeze enemies and would freeze them for a very long time with any weapon.Entombing - Would permanently freeze enemies with any weapon. (Obviously much lower chance to roll each as you go up to entombing.) That list came from a note.. I guess I had... to implement something similar to the enchanting table from minecraft for the don't starve world. Was actually going to be a blood magic table. I don't know about having double-effect items... I mean, especially if you get something like a "Frost Axe of Flame" - what happens then? xD I'm definitely in favour of the non-random names - being able to identify the feature by prefix is an important usability feature, in my opinion. (And as a rebuttal, "Telelocating" to me sounds like an odd suffix. - If it is decided to go that route, what would make more sense to me grammatically would be "... of Telelocation." But I'm nitpicking. xD) A "Frost axe of Flame" would be a bad roll, and that'll happen if you add effects like this to the game. A Frost Ice staff is just as bad of a roll. Don't starve isn't supposed to be easy! But to explain, I will assume that the frost prefix would freeze an enemy and the flame suffix will light them on fire for an easy example. If both efffects were to trigger simultaneously then they wuold freeze and catch on fire thus defrosting them. So bad roll, but effects still possible. Link to comment Share on other sites More sharing options...
Heavenfall Posted September 21, 2013 Author Share Posted September 21, 2013 Indeed a flaming axe of frost would be useless for the reason you said - flaming includes thawing frozen enemies, and frost would include extinguishing burning enemies. I'm linking the strength of the enchantment to the weapon instead. So a flaming axe might have 2% chance to set someone on fire, while a tentacle spike would have 6%. This way we can have variable effects but the player can rest assured that "more is always better". Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.
Please be aware that the content of this thread may be outdated and no longer applicable.