Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Dirst

Pages: 1 ... 198 199 [200] 201 202 ... 239
2986
In a graphics pack, the majority of raw changes are altering display tiles and replacing accented characters in the language files.  The latter frees up a lot of space in the tileset to allow more variety in the former.

Two quick notes:

1. We can't assume someone is running TWBT, especially if we aren't going to assume DFHack is installed.

2. Graphics files in /data tend not to collide... though personally I find the Starter Pack's habit of wiping out my font.tff file a little annoying.  A diff-from-vanilla based off of a graphics pack should exclude things like the font and cursor because those weren't changed.  The ticklish bit is applying a diff to the init file since it's not in the raw or data folder.

That said, the same logic should be able to apply graphics packs like any other mod, though I'd recommend applying them last.  That could be suggested/recommended/coerced through the optional manifest file.  I'd go one further and bring along a Stonesense folder since it would be ignored if that tool isn't installed.  I'm not aware of any mods that play with Soundsense, but if there are then it ought to get similar treatment.

2987
Utilities and 3rd Party Applications / Re: Stonesense: Usage Poll!
« on: August 19, 2014, 09:37:14 am »
I think the soapmaker's workshop might be the one to copy, since it's also a custom workshop.

In other news, this:
Spoiler (click to show/hide)
Thanks, and the other news is gorgeous.

2988
Utilities and 3rd Party Applications / Re: Stonesense: Usage Poll!
« on: August 19, 2014, 08:58:15 am »
The building raws are, quite frankly, rather obtuse, and I don't fully undersrand them myself fully.
Well I do have some guano, eye of newt and quicksilver... so I'm ready for any black magic necessary.

Is there an example of an included 3x3 workshop that uses 9 different tiles?  I should be able to clone that at the worst.  The Still has 9 different tiles in the main interface, though that doesn't necessarily translate to the Stonesense equivalent.

2989
the double type was an accident

as to:
"remove any line consisting entirely of square brackets would be nice"

that was done intentionally.  To keep the contextual information in place (such as commented out options like mw has).  The mess of brackets was due to me purposely putting a bunch in.

This format should work.  It merely extracts [tokens] and put's them on their own line.  Everything else is left to whatever line it was on.

There is a much simpler version of the script that just grabs the [tokens], but you'd have to reinject the filename at the top
Code: [Select]
sed -e "s/\[[^][]*\]/\n&\n/g"

Try this as a sed command

s/(.*?)(\[[^][]+\])/\1\n\2\n

and see if that works.  It looks for "something that's not a valid tag" followed by "something that is a valid tag" and inserts newlines after each.  Consecutive valid tags probably put a blank line in between, but a wrapper (or second pass) can weed all of those out.

2990
DF General Discussion / Re: Why don't dwarves use spears?
« on: August 18, 2014, 03:54:20 pm »
Two dwarves throw a third dwarf at the bad guy? Back-to-back axe buddies?)

Nobody tosses a Dwarf!

2991
DF Modding / Re: Sensible Armor
« on: August 18, 2014, 02:46:25 pm »
Good work.

I don't want to put this in a mod exactly; but I keep my raws coordinated across computers via dffd, and other people download them sometimes. Is it OK if I bundle this in?

EDIT: By the way, I was under the impression that a mail hauberk could be worn over plate armor, but your raws define them as going under the breastplate. I can't find an answer on wikipedia and I don't have time for an authenticity google crawl; can anyone reading this tell me for sure?

Not an expert, but a hauberk is a long shirt of mail that usually covers the crotch and at least part of the upper legs.  I imagine it'd be difficult to tuck in like a shirt to keep inside a breastplate.  That said, having chain bits inside plate armor was pretty common, I just don't think they were hauberks.

Putting a hauberk on the outside of plate armor seems really heavy and useless... it blunts edged attacks, but then again so does the plate under it.  A (relatively) light chain shirt inside the breastplate is just as effective at filling gaps and it doesn't explode into a shower of rings when smashed against something rigid under it.

2992
Ï don't believe any food rots once stored, unless Masterwork has done something with that.

Trouble is, I don't have any way to store it. They won't put it into barrels or pots - I'm assuming because they don't have the capacity for it?
Just imaging a Dwarf in a chef's hat trying to balance a plate with 6015 cakes stacked one atop the other.  One of the militia comes by and puts a hand on the third-to-bottom one.  "These look tasty.  Have you ever heard of a game named Jenga?"

2993
DF Suggestions / Re: A LOT of suggestions!
« on: August 18, 2014, 01:58:24 pm »
Arsonist!
Thieve and Kidnapper are fun! Bring some guy who sneaks in and burns stuff!
This is actually a !!FUN!! idea.
I think arson ought to wait until there is some way to actually fight fires without resorting to immersion-breaking exploits.  Then arson should be a standard part of Goblin sieges (and Greek fire and/or flaming arrows should be a standard part of Human sieges).

2994
Quote
A manifest file (which is planned) can list dependencies, and it could also list known semantic conflicts like the one you mentioned.  Such a manifest entry could specify whether the mod is completely incompatible, or there is a required load order.

It's planned? Haven't seen it on this thread. As far as manifest files, PE said just the other day that:

I am strongly opposed to anything which would require a more complicated input than folders of changed raws, as outlined in OP.  This is because I feel having a simple, usable, standard format is very important for adoption from both users and modders.  If it becomes common to have a readme.txt and configuration.xml - to hold info such as author, name, homepage, base DF version, etc in the latter case - it would be good to use that information but their absence must be handled gracefully.

Which would seem to imply no manifest file required. If planning is going on/that requirement has been reversed elsewhere, I'll shut up and let you work, since I don't want to butt in when I don't have all the information.

A manifest is the third point on the OP, though I did overstate it a bit by implying it was a definite feature when it's just being looked at.

I do differ with PE a bit because I think asking the modder to document known incompatibilities isn't much of a burden.  If we get around to a stretch goal of using that manifest file to check for mod updates, it will ripple out to the users with minimal effort.  The thorny issue is what to do if the tool discovers an active game has a newly discovered conflict.

Warning:
You are using RampageMod v1.08 and Zootastic v2.0, and an incompatibility between these mods has been identified.


Severity:
Minor

The problem:
Both of these mods affect several mundane animals in different ways.  The combination of mods does not cause an error, but it does affect the game balance that each mod is attempting to achieve.

Recommended actions:
It is recommended that you take one of the following actions.
(1) Ensure that Zootastic is loaded before RampageMod.
(2) Update to RampageMod v1.09.
Unfortunately, none of the above changes can be applied to active game.  We apologize for the inconvenience.

2995
DF General Discussion / Re: Economy. Uh oh!
« on: August 18, 2014, 12:50:14 pm »
However, subsequent testing with the latest version seems to indicate that a few important parts of the economy no longer exist within the code - "Collect Taxes" jobs never get created on the tax collector (and "Guard Tax Collector" jobs don't get created on royal guards), and job salaries never get initialized (normally, that happened during economy activation when the proper nobles arrived).
I half-expected activating the economy to cause a pop-up "Not yet, Quietust."

2996
... Which is exactly why I'd go the route of Valdemar's stuff.  First flatten everything, then read/index all the objects/entities into structures, then do the diff patch generation on an object by object basis.  It's basically the same thing but with with the added bonus of the program being able to say explicitly what objects were deleted, what's been added and so on.  You have two levels of differences - the objects present difference, and the difference between equatable objects themselves.  The process to resolve conflicts becomes much more mechanical then, rather than holding hands up and saying, "well, it doesn't work and we don't know why".

In case 1 you'd know that the added lines of B would at least be in the correct object, and if the program was smart it could drop those lines in right after the correct preceding line.

In case 2 you'd know in what object the conflict arose and could prompt the user with relevant information.

This way would make this basic stuff easier, and open the door for more advanced stuff like making connections throughout the raws to entirely remove problem objects.  The two pass method Dirst suggests is essentially the same thing but done in a roundabout way.

The diff patch stuff is a good start and totally necessary, but IMO it'd be pointless to do this without going the route of interrogating the raws in a raw-language manner.  PE said he was adverse to an "advanced mod loader", which I understand... But I feel this way is the minimum, not an advanced feature.

I'm with Hermes.

IMO a tool that can only load a single minor mod is trivial, because most minor mods are set up to just overwrite the vanilla folder. If you want a mod loader that can load one mod at a time, it doesn't need all this logic - just a vanilla raw directory, a bunch of minor mod raw directories, and the ability to select which minor mod you want to load on top of the vanilla raw directory in the application raw folder. To load one mod, there's no need to diff. So I assume you want something that can load more than one set of raws... but merging multiple mods through diff would be a nightmare. The dupes alone... Not to mention the really problematic part of merging, creature variations.

For example, the vampires-drink-booze-fix I have uses creature variations to replace humanoids' blood with BLOOD2 or ICHOR2, which is default blood with a syndrome. Diff wouldn't find any problems loading the boozefix alongside another mod that did something to blood, but trying to load a creature with modifications to BLOOD after BLOOD has already been replaced with BLOOD2 (and so no longer exists in the creature definition)? There's no way to find those kinds of conflicts without loading raws.
Thistleknot is working on a more robust merge tool, and there's also Rubble.

PeridexisErrant is aiming for a simple way to sample mods, and for a pre-1.0 it's perfectly fine for it to be one mod at a time.  I believe that a useable tool should be able to handle some simple merging, like putting two mod's worth of PERMITTED_REACTIONs into the same entity_default.txt file, or modifying one creature when a creature before it in the same file had a line added/removed.  In this regime, two mods are in conflict only in the narrow sense that they attempt to modify the same vanilla tag.  That could be an insta-fail or a last-in-wins depending on settings, especially since load order is user-definable.

A manifest file (which is planned) can list dependencies, and it could also list known semantic conflicts like the one you mentioned.  Such a manifest entry could specify whether the mod is completely incompatible, or there is a required load order.  That presents comprehensible guidance to the player while minimizing the complexity (i.e., no recursive searches through the raws to locate unused tissues).

2997
DF Modding / Re: Multi-race forts?
« on: August 18, 2014, 12:15:14 pm »
That should be correct.  Just don't make the mistake of setting the caste probability to 0 because that won't prevent the caste from being born.  I believe the game treats 0 as 1 in this case, but whatever it does doesn't eliminate the possibility altogether.
It treats a 0 as a 100, which is also the default for any caste without a population ratio.
A workaround I ended up thinking to this is to set the pop ratio to 1 (and the pop ratio for the rest as something quite high) and giving the caste a transformation syndrome to change into a regular caste as soon as they appear in play.

Wouldn't this defeat the purpose of making slave castes? Since they'd all transform as soon as they appear...
Well, you could set the interaction to be ineffective against someone with a specific SYN_CLASS, and be sure to infect any new slaves with it.

This is getting just a tad convoluted :)

2998
DF Modding / Re: Multi-race forts?
« on: August 18, 2014, 11:03:56 am »
That should be correct.  Just don't make the mistake of setting the caste probability to 0 because that won't prevent the caste from being born.  I believe the game treats 0 as 1 in this case, but whatever it does doesn't eliminate the possibility altogether.
It treats a 0 as a 100, which is also the default for any caste without a population ratio.

2999
Utilities and 3rd Party Applications / Re: Stonesense: Usage Poll!
« on: August 18, 2014, 10:59:52 am »
A big thanks to everyone who makes Stonesense a reality.

After banging my head against the raws and DFHack, I now have a small mod functional enough to worry about what it looks like.  I was able to visually differentiate two dozen castes with a ridiculously small amount of XML:

Code: (tesb_awakened_stone.xml) [Select]
<?xml version="1.0" ?>
<creatures file="tesb_awakened_stone.png">
 <creature gameID="AWAKENED_STONE" sheetIndex = 0  color="bodypart" bodypart="skin">
     <subsprite sheetIndex="1" color="bodypart" bodypart="eyes" pattern_index="2"/>
 </creature>
</creatures>

which just goads me into making some animations and stances that depend on neighboring tiles.

On the other hand, I can't make heads or tails out of the building XML.  Is there a relatively simple readme somewhere about Stonesense buildings?  The workshops are all 3x3 and symmetric, so I wouldn't need any of the fancy rotation logic that seems to be embedded in there.

Edit: This is probably a DFHack issue rather than a Stonesense issue, but polling the "eyes" color isn't working for my creature or the included creatures.  For now I'll just specify each caste's eye color explicitly.  Still stymied on buildings, though.

3000
.The two pass method Dirst suggests is essentially the same thing but done in a roundabout way.

I had a feeling that about five minutes thought by a dabbling coder wasn't going to overtake an entire open source community.  Glad that someone has already optimized that idea.

Pages: 1 ... 198 199 [200] 201 202 ... 239