Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

More Survival Tools Mod, Plus Modded MShock24 Tileset #11707

Merged
merged 12 commits into from Apr 4, 2015
Merged

More Survival Tools Mod, Plus Modded MShock24 Tileset #11707

merged 12 commits into from Apr 4, 2015

Conversation

chaosvolt
Copy link
Contributor

A mod adding a number of new tools and recipes, along with two new
classes. In addition, a variant of the MShock24 Tileset has been
included, ensuring all items I've added have either a unique tile, or
use an existing one.

Additional tweaks have allowed the new ember carrier item to hopefully
not be buggy.

Additions and changes:

New classes:

  1. Nomad. 5 point cost. Survival 3, Fabrication 3, Tailoring 1, Marksmanship 3, Archery 2, Cooking 3. Starts with fur cloak, fur loincloth, leather backpack, fur boots, fur scarf, quiver, shortbow, 10 fletched wooden arrows, copper knife, stone pot, small waterskin, flint and steel, ember carrier.
  2. Prehistoric Hunter. 2 point cost. Survival 2, Fabrication 2, Cooking 1, Marksmanship 3, Throwing 2, Melee 3, Piercing 2, Dodging 1. Starts with fur cloak, fur loincloth, leather backpack, fur boots, stone spear, spear-thrower, 8 stone javelins, 4 throwing sticks, stone knife, hand axe, stone pot, small waterskin, fire drill. Also Illiterate.

Scenario tweaks:

  1. Wilderness scenario starts in the "deep forest" terrain available
    instead of the default regular forest. Seems to somewhat push spawn
    points farther away from civilization. Also allowed Nomad and
    Prehistoric Hunter as profession options.

Material tweaks:

  1. Copper has been defined as a material of its own. The actual copper
    item, copper wires, copper tubing, copper earrings, and copper bracelets
    have all been tweaked to reflect that. This was originally part of my
    bronze-making addition before I decided to separate the Classical and
    Medieval additions, but is still used due to the addition of copper
    tools.

Item changes:

  1. Slings have been buffed in damage relative to slingshots, in exchange
    for more dispersion.
  2. Javelins have been changed from weapons to ammunition, for the new
    spear-thrower weapon.

A construction:

  1. Pine lean-tos. These are simpler improvised shelters that require a
    nice, fluffy pine-tree instead of having to gather pine boughs yourself.

New items:

  1. Tinder. Made from various items, it's used as fuel for a couple new
    items.
  2. Hobo stoves. Uses tinder, basically an alternative to the hotplate
    with lower capacity.
  3. Flint and steel. Infinite uses, but still slow to start fires with.
  4. Ember carriers, the more useful reason for tinder. Light it via a
    fire and it'll sustain a smoldering ember for a good while, for later
    fire-lighting. See below for a bug warning, though.
  5. Metal water bottles, just because. Usable for boiling.
  6. Crude binding material made from pine resin and natural cordage. The
    primitive answer to duct tape, but not usable for toolboxes, mechanics,
    or any other secondary role duct tape is used for. Only used for fixing
    wood, bone, etc items.
  7. Throwing sticks. Rabbit sticks, boomerangs, whatever you wish to call
    them. A throwing item that can stun target and won't gib small game. Not
    the returning type of boomerang.
  8. The hand axe, a crude stone tool usable for cutting and butchering,
    plus bare-minimum woodwork and hammering.
  9. The spear-thrower, or atlatl. Used to get more range out of javelins.
  10. Stone and copper versions of javelins.
  11. Stone and copper spears as well!
  12. Copper knifes and axes, of course.
  13. Garlic? Yep, garlic. Good for your health maybe, not so good for
    your breath.
  14. Cheeeese. Or rather, hard cheese with a better shelf life, that can
    be crafted. Requires you to first procure the means to start curdling
    it, let it curdle for a while, when finally process it further into
    cheese. Due to container weirdness, see below for bug warning.
  15. Stone macuhitl! Bit less damaging than the makeshift glass version, and takes more skill to make.
  16. Couple new misc. clothing items to find and/or craft.

Recipe additions and tweaks:

  1. All of the above-mentioned items can be crafted.
  2. Option to use pine boughs for torches.
  3. Option to cure hides and pelts by drying them over a fire without
    salt. This is more time-consuming.
  4. Iron javelin crafting recipe reflects the fact that they're a stack
    of items now.
  5. As mentioned above, uncrafting copper items yields copper instead of
    scrap metal.
  6. Improvised recipe for bandages using crude binding materials and
    natural antiseptics (like garlic). This is more difficult than the
    proper way of making bandages.
  7. Italian seasoning has a crafting recipe now, as another excuse to
    give garlic a use.
  8. Withered plants can be crafted into plant fibre, using a basic
    hammering tool plus a distaff and spindle.
  9. A few primitive items that involve thread for binding material can
    use withered plants or resinous cord, the former reflecting the use of
    withered plants as an option for stone knives. The exception is that if
    the binding material is implied to be for a handle (like said knives),
    then no using sticky resinous cords.

And finally, the inevitable bugs:

  1. I wanted curdling milk to be a contained liquid, but currently the
    "wait for it to finish" function doesn't work too well with items that
    go in containers.
  2. If you do NOT use the tileset included, pine lean-tos will look odd
    as it likely will use a fallback tile without assigning a
    non-transparent background. This is fine if the object without a tile is
    an item or such, because it shows the terrain underneath. But when the
    object being displayed IS the terrain, any transparent space left
    displays delicious brain-melting hall-of-mirrors errors.

A mod adding a number of new tools and recipies, along with two new
classes. In addition, a variant of the MShock24 Tileset has been
included, ensuring all items I've added have either a unique tile, or
use an existing one.

Additional tweaks have allowed the new ember carrier item to hopefully
not be buggy.

Additions and changes:

New classes:
1. Nomad. 4 point cost. Survival 2, Fabrication 3, Tailoring 2,
Marksmanship 3, Archery 2, Cooking 3, First Aid 1. Starts with fur body
armor, leather backpack, fur boots, fur hat, fur scarf, quiver, sheath,
shortbow, 20 fletched wooden arrows, copper knife, copper axe, pot,
small waterskin, fur rollmat, flint and steel, ember carrier.
2. Prehistoric Hunter. 2 point cost. 3 Marksmanship, 2 Throwing, 3
Melee, 2 Piercing, 1 Dodge. Starts with fur cloak, fur loincloth,
leather backpack, fur boots, stone spear, spear-thrower, 8 stone
javelins, 4 throwing sticks, stone knife, hand axe, stone pot, small
waterskin, fire drill. Also Illiterate.

Scenario tweaks:
1. Wilderness scenario starts in the "deep forest" terrain available
instead of the default regular forest. Seems to somewhat push spawn
points farther away from civilization. Also allowed Nomad and
Prehistoric Hunter as profession options.

Material tweaks:
1. Copper has been defined as a material of its own. The actual copper
item, copper wires, copper tubing, copper earrings, and copper bracelets
have all been tweaked to reflect that. This was originally part of my
bronze-making addition before I decided to separate the Classical and
Medieval additions, but is still used due to the addition of copper
tools.

Item changes:
1. Slings have been buffed in damage relative to slingshots, in exchange
for more dispersion.
2. Javelins have been changed from weapons to ammunition, for the new
spear-thrower weapon.

A construction:
1. Pine lean-tos. These are simpler improvised shelters that require a
nice, fluffy pine-tree instead of having to gather pine boughs yourself.

New items:
1. Tinder. Made from various items, it's used as fuel for a couple new
items.
2. Hobo stoves. Uses tinder, basically an alternative to the hotplate
with lower capacity.
3. Flint and steel. Infinite uses, but still slow to start fires with.
3. Ember carriers, the more useful reason for tinder. Light it via a
fire and it'll sustain a smoldering ember for a good while, for later
fire-lighting. See below for a bug warning, though.
4. Metal water bottles, just because. Usable for boiling.
5. Crude binding material made from pine resin and natural cordage. The
primitive answer to duct tape, but not usable for toolboxes, mechanics,
or any other secondary role duct tape is used for. Only used for fixing
wood, bone, etc items.
6. Throwing sticks. Rabbit sticks, boomerangs, whatever you wish to call
them. A throwing item that can stun target and won't gib small game. Not
the returning type of boomerang.
7. The hand axe, a crude stone tool usable for cutting and butchering,
plus bare-minimum woodwork and hammering.
8. The spear-thrower, or atlatl. Used to get more range out of javelins.
9. Stone and copper versions of javelins.
10. Stone and copper spears as well!
11. Copper knifes and axes, of course.
12. Garlic? Yep, garlic. Good for your health maybe, not so good for
your breath.
13. Cheeeese. Or rather, hard cheese with a better shelf life, that can
be crafted. Requires you to first procure the means to start curdling
it, let it curdle for a while, when finally process it further into
cheese. Due to container weirdness, see below for bug warning.
14. Couple new misc. clothing items to find and/or craft.

Recipe additions and tweaks:
1. All of the above-mentioned items can be crafted.
2. Option to use pine boughs for torches.
3. Option to cure hides and pelts by drying them over a fire without
salt. This is more time-consuming.
4. Iron javelin crafting recipe reflects the fact that they're a stack
of items now.
5. As mentioned above, uncrafting copper items yields copper instead of
scrap metal.
6. Improvised recipe for bandages using crude binding materials and
natural antiseptics (like garlic). This is more difficult than the
proper way of making bandages.
7. Italian seasoning has a crafting recipe now, as another excuse to
give garlic a use.
8. Withered plants can be crafted into plant fibre, using a basic
hammering tool plus a distaff and spindle.
9. A few primitive items that involve thread for binding material can
use withered plants or resinous cord, the former reflecting the use of
withered plants as an option for stone knives. The exception is that if
the binding material is implied to be for a handle (like said knives),
then no using sticky resinous cords.

And finally, the inevitable bugs:
1. I wanted curdling milk to be a contained liquid, but currently the
"wait for it to finish" function doesn't work too well with items that
go in containers.
2. If you do NOT use the tileset included, pine lean-tos will look odd
as it likely will use a fallback tile without assigning a
non-transparent background. This is fine if the object without a tile is
an item or such, because it shows the terrain underneath. But when the
object being displayed IS the terrain, any transparent space left
displays delicious brain-melting hall-of-mirrors errors.
@@ -0,0 +1,19 @@
[
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This bloody thing was what started my adding a tileset.

@Coolthulhu
Copy link
Contributor

Few issues:

  • Copper spear has wrong description
  • Hand axe is really good. Better than stone knife in every way and also cheaper. Maybe it should take more survival, like around 3-4 or so?
  • Some of the tags are outdated, for example the "KNIFE" iuse function (it is now written as lowercase "knife" like use_actor functions rather than older iuse ones). The mod will not load in experimentals.
  • This version doesn't compile, as you can see in buildbot's output.

Also, you should probably split the tileset from this PR and send them separately.

@chaosvolt
Copy link
Contributor Author

Ack. Will need to tweak the spear and hand axe. And...as for the issue with tags, those were copied from the code I got from forking in the case of the source files, and derived from 0.C files in the case of the mod files.

Also...crap. Anything else preventing it compiling? x.x

EDIT: Even after upstreaming I'm still getting all-caps item use tags. @_@

@KA101
Copy link
Contributor

KA101 commented Mar 21, 2015

Looks like at least one missing close-quote at the tinderbox iuse, and either that touched off a cascading definition fail or something's amiss elsewhere. In general, clicking the red X next to your most recent commit will reveal the Super Awesome Useful Details* and tell you where the buildbot wasn't able to handle things.

*Narc's phrase, and I like it.

As for the tileset additions, tilesets are CC-BY-SA like every other part of DDA. MShock started by updating others' tilesets and there's no reason you can't do the same: in particular, including art for one's content packs makes less work for tileset artists, so IMO it's extremely considerate.

"name_plural" : "tinder",
"symbol" : "=",
"color" : "brown",
"description" : "Flammible material, finely divided for easy combustion.",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Flammable

@Rivet-the-Zombie
Copy link
Member

Upon review, I don't see why this should be a mod; it should go into the mainline. It's good stuff.

"points": 4,
"skills": [
{
"level": 4,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK. It'd cost four points to buy this amount of survival skill at chargen: first point buys 2 and the next are one apiece. Similar pricing applies down the line, so you're looking at 12 points just in skills.

@chaosvolt
Copy link
Contributor Author

Hmm. Also, I updated it with fixes, so...um, doing so DID entail yanking out the tileset. #11711

Is there any way to just update THIS one instead of branching again?

As for the professions...should I change the Nomad, or just remove? What about Prehistoric Hunter?

EDIT: I am a dunce. Gonna port over what I fixed in the second PR and see if I can update this one.

@KA101
Copy link
Contributor

KA101 commented Mar 21, 2015

Is there any way to just update THIS one instead of branching again?

Sure. Go into this branch, make the fixes, commit, and push. Github will automatically update your PR.

@chaosvolt
Copy link
Contributor Author

Think if I DO give the Prehistoric Hunter more skills, the non-combat skills will only be 1 points, not 2-3.

1. Ported after fix and corrections from Version 2, which I originally
derped and made Version 2 a separate branch.
2. Additional typo correction in tinder item.
3. Took away some of the Nomad's starting gear, reduced some skills, and
bumped up point cost.
4. Gave Prehistoric Hunter level 1 in a few assorted non-combat skills.
@chaosvolt
Copy link
Contributor Author

Upon review, I don't see why this should be a mod; it should go into the mainline. It's good stuff.

Also, whichever content KA101 decides warrants being mainlined, yus. owo

@KA101
Copy link
Contributor

KA101 commented Mar 21, 2015

Rivet's authorized to merge, too, and her opinion carries quite a bit of weight even if she doesn't use her Big Green Button that often. ;-) I just do most of it.

Recipes (cheesemaking in particular) I'd agree should be mainlined; the metal-breakout is a good idea but probably will need further work (can be done in later PRs).

KA101 adds garlic to everything, because fuck yeah garlic

@chaosvolt
Copy link
Contributor Author

Yay. In that case I'll leave it up to both of you. <3

@John-Candlebury
Copy link
Member

Wanted to point out that there's already a stone axe item in the game, which would pretty much be the hand axe.

@chaosvolt
Copy link
Contributor Author

Wanted to point out that there's already a stone axe item in the game, which would pretty much be the hand axe.

Not quite. That's a proper woodcutting axe, whereas a hand axe is, well... http://en.wikipedia.org/wiki/Hand_axe

Not a hatchet, which is what you're likely thinking of. o3o

@chaosvolt
Copy link
Contributor Author

Okay, small problem. Finally compiled and tested it, I'm getting errors caused by following Coolthulhu's warning that all-caps item uses won't work.
debug derps

@BevapDin
Copy link
Contributor

The names of the iuse functions are all uppercase, e.g. "HOTPLATE", see at all the examples in data/json/items/tools.json

@chaosvolt
Copy link
Contributor Author

Some of the tags are outdated, for example the "KNIFE" iuse function (it is now written as lowercase "knife" like use_actor functions rather than older iuse ones). The mod will not load in experimentals.

The other points he made proved valid, though. Right, I'll need to fix that.

Also discovered I might still need the [REFILLABLE_LIGHTER] tag for the lit ember carrier to work.

...dafuq? It's erroring at me regardless of whether the use-action is "knife" or "KNIFE" it seems. The others stopped puking up errors when I engaged caps-lock mode though. o3o

EDIT: " "use_action": { "type": "knife" }," I see the issue now.

@BevapDin
Copy link
Contributor

Some of the tags are outdated, for example the "KNIFE" iuse function (it is now written as lowercase "knife" like use_actor functions rather than older iuse ones). The mod will not load in experimentals.

It is now a different syntax, before:

"use_action": "KNIFE"

Now:

"use_action": {
    "type": "knife",
}

There is no "use_action" KNIFE anymore, so you have to replace it with the code above (containing the lowercase "knife").

The "use_action" HOTPLATE still exists and can be used like before, there is no "use_action":{ "type": "hotplate"}, that wouldn't work.

This is not a thing about upper/lower case. Both entries refer to different things the use_action:HOTPLATE is a fixed C++ function. The other syntax with the Json object allows several aspects of the behavior to be defined in json (e.g. what to transform to, if you use the transform action).

@chaosvolt
Copy link
Contributor Author

Ah, I see the issue now.

Are there other use_actions that are expected to receive this change, so I'll know what else to tweak?

@BevapDin
Copy link
Contributor

Any other use_actions that are expected to receive this change,

I don't known, but if they change, your mod will for sure be changed as well to be still playable.

@chaosvolt
Copy link
Contributor Author

Ack. That's odd. It should work with javelins, not the other types of spears.

Based off most historical atlatls and woomeras generally using specialized spear-like darts or javelins instead of full-on thrusting spears.

@KA101
Copy link
Contributor

KA101 commented Mar 26, 2015

OK, I missed that detail. >_< Rechecking.

@KA101 KA101 self-assigned this Mar 26, 2015
@chaosvolt
Copy link
Contributor Author

I'm guessing I might need to change the spear-thrower's name to not imply that. Might suggest renaming it atlatl, since that's its name in the code anyway. o3o

Just in case I'll check to ensure it still works right with javelins.

EDIT:
delicious javelins

EDIT 2. Crap, says I get a range of zero. Add that to the list of crap I'll need to fix.

@chaosvolt
Copy link
Contributor Author

Okay, easy enough to give the javelins range when fired. If I may commit that change, then? Before I do so, how much more range should they have compared to just throwing them?

For reference, seems a character with the basic 8 strength and no throwing skill can toss wooden javelins 12 squares, stone ones 10 squares, and iron/copper ones 8 squares.

@KA101 KA101 removed their assignment Mar 26, 2015
@KA101
Copy link
Contributor

KA101 commented Mar 26, 2015

I'd guess a 25% range bonus, possibly with an accuracy drop/dispersion increase, but I'm short time, I'm afraid. Not gonna make it in tonight. Sorry, chaosvolt.

@chaosvolt
Copy link
Contributor Author

ah, okay. Is fine. Between more mod derping and trying to help a friend fix his Skype, I need a freaking drink. Southern Comfort, oh close yet awful-tasting friend. =w=

Commiting change.

1. Unfucked the atlatl's hilarious 0-tile range.
2. Increased atlatl's dispersion from 95 to 120.
3. Changed spear-thrower's name to atlatl, and changed description to be
clearer about the ammo it uses.
@chaosvolt
Copy link
Contributor Author

Hnng. Before it gets re-assigned again, anything else in need of tweaking beforehand?

@KA101
Copy link
Contributor

KA101 commented Mar 31, 2015

Dunno. Been a long day on my end already and I'm testing some others. If nobody grabs this before tomorrow (defined as "when I get on again after sleep and work") I'll take a look. Sorry for the delay.

@chaosvolt
Copy link
Contributor Author

Ah, understandable. Is fine. One thing I'm contemplating is whether the stone macuhitl is fine with only 1 less blunt and 1 less edged damage compared to the glass version. How much damage is the ability to not break in 1 hit worth? o3o

@Coolthulhu
Copy link
Contributor

Glass macuahuitl is a heavily underbalanced weapon due to the glass material and high cost and yet mediocre stats.
If you want to balance the stone version, give it less cutting, more bashing and slightly more weight. If using the glass one as a point of reference, the stone one should probably be more bashing than it is cutting.

@chaosvolt
Copy link
Contributor Author

Hmm, might bump the bashing damage by 1 instead of subtracting 1, and in turn lower the cutting damage by 3.

As for weight, I did increase it slightly relative to glass, I think.

Also, not sure how best to tweak the cheese-making. Instead of a containerless generic "curdling milk" item, should I maybe have it use a waterskin and have it implied to function like sealed jars of pickled food?

Making curdling milk be a liquid item stored in a container causes some...issues. Makes you drink a bit when you use it after the curdling's finished, and containers full of curdling milk can't track the timing of individual amounts of liquid.

chaosvolt added 2 commits March 31, 2015 03:29
1. Made the stone macuhitl deal a bit more blunt damage, less cutting
damage, and weigh a bit more than beforehand.
2. Cheesemaking should be less derpy now. Uses a small waterskin to hold
the cheese-to-be instead of it being an uncontained item.
1. Reduced copper axe's woodcutting value from 3 to 2.
2. Added straw fedora to the list of hats you can ugly up by adding a
hood to. o3o
@chaosvolt
Copy link
Contributor Author

Additionally pondering whether or not to give the nomad back the copper ax, and maybe in exchange for replacing the copper knife with a stone one?

Also pondering whether to tweak prehistoric hunter some, like replacing fur boots with fur foot rags, or swapping around what weapons they get. Having both a spear-thrower and throwing sticks seems kinda derpy, as it gives more of an Australian Aboriginal vibe than other weapon combinations might.

Also, if birch trees ever get added, I'd definitely want to take advantage of prehistoric uses of birch bark. o3o

Also also, there seems to be no fur equivalent to the leather pouch and backpack. Tempted to either add a fur variant of the leather pouch, or add an override reaction that allows using fur in addition to leather. Any thoughts on which option sounds better?

@KA101
Copy link
Contributor

KA101 commented Apr 4, 2015

Net connection up. Hold still a sec.

@KA101 KA101 self-assigned this Apr 4, 2015
@chaosvolt
Copy link
Contributor Author

Ah, okay. Hope things turn out alright this time around. owo

@KA101
Copy link
Contributor

KA101 commented Apr 4, 2015

Meh, looks like your t_leanto is gonna be a pain. JSON load order, mapgen handling, etc. I'll see about fixing it.

@chaosvolt
Copy link
Contributor Author

Meep. That was one thing I was worried about, since it was the main reason I started making an edited tileset due to transparency failures, plus the logistics of turning a pine tree into an improvised shelter (mainly the fact that smashing it would produce a shallow pit which would be illogical) were the reason I made a separate terrain entity. I was kinda worried it would only get derpier the deeper one looks at it.

If it proves too annoying, dunno whether to suggest retaining as mod-only or simply remove.

Other oddities I've found so far...ember carriers don't seem to count as having fire on hand for the purpose of lighting other ember carriers, molotovs, etc. Throwing sticks also seem to have hilariously high range when thrown, though that's likely because they might be lighter than they ought to be. @_@

@KA101
Copy link
Contributor

KA101 commented Apr 4, 2015

If you have fixes, upload them. Otherwise, they can wait for another PR.

@chaosvolt
Copy link
Contributor Author

No idea how to fix the ember carrier, whereas throwing sticks should be a simple weight change. Anything else that might warrant an upload while I have the chance?

@KA101
Copy link
Contributor

KA101 commented Apr 4, 2015

Probably, but for now I was willing to merge.

@chaosvolt
Copy link
Contributor Author

Hmm. Can presumably save it for a later PR then, as a bump to item weight isn't really enough to interrupt with. ^^"

EDIT: And for double the derp, I tested it again with a character having both a rock and a throwing stick, and they had the same range, so my "odd, why can I throw this THAT far" issue was likely from failing to pay attention to character stat and/or skills. >_>

@KA101 KA101 merged commit 863b93d into CleverRaven:master Apr 4, 2015
@chaosvolt chaosvolt deleted the more-survival-tools-mod branch April 5, 2015 17:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

8 participants