Angband Forums

Angband Forums (http://angband.oook.cz/forum/index.php)
-   Variants (http://angband.oook.cz/forum/forumdisplay.php?f=4)
-   -   Beleriand status (http://angband.oook.cz/forum/showthread.php?t=9442)

Gauss June 7, 2019 08:39

Beleriand status
 
Found https://github.com/NickMcConnell/Beleriand and my hype wnet over 1000.
Suddenly i noticed that the latest commit was from 2013. Did you leave the project Nick?
Also what where the major goals of this unreleased variant? Was it an FAangband evolution?

Mondkalb June 7, 2019 09:11

There is more: http://angband.oook.cz/forum/showthread.php?t=6062

I sincerely hope Nick will be done with Vanilla in the not too far future and will then still be motivated to go on with Beleriand. :D

Nick June 7, 2019 14:04

I have plans...

Mondkalb June 7, 2019 14:38

I knew it! :D

Gauss June 8, 2019 11:25

Then i'm hyped again. Make sure to keep us informed on your progress Nick.

HugoVirtuoso June 9, 2019 04:17

I spoke to Nick on angband.live on this topic for a bit. AFAIK, he will work more on Beleriand after Angband v4.2 is released.

DrWho42 September 12, 2019 10:24

exciting news! :eek:

Nick September 27, 2021 02:43

After considerable effort, I have now got back to the situation of 8 years ago. The very uninformative home page is here.

This is not yet a game. It has progressed enough that I can say the method of saving and reloading of dungeon and wilderness (including monsters, objects and the player) works, and the game can be closed and re-opened and loads the savefile correctly. But my intention is for the game to look absolutely nothing like its current form - in particular pretty much all the gameplay is going to be gutted and replaced with something more like Sil, and I don't really have a clear picture of what you might call a win condition. The foundation of the game is the map, and so getting that working the way I want it is top priority.

My broad plan from here is:
  1. Get wilderness generation working. This involves getting the individual types working (forest, plain, etc), and then adding rivers and roads which are handled separately. Also I'll need to properly add in landmarks besides the gates of Angband.
  2. Work out how characters are going to work. The general idea is redo races, replace classes with a Sil-like skill tree, and then try to make that balanced, all with a planned new stat system.
  3. Completely overhaul the monster and object lists.
  4. Start thinking about how a game is played, including tasks and how to actually move around this ridiculous world.
The code repository will be updated from time to time, but this is a big task and progress is likely to be slow and irregular. My sincere thanks to everyone who has contributed to Angband and FA, as this is all built on top of that effort. I hope that one day this becomes something worth playing :)

HugoVirtuoso September 27, 2021 02:45

Behold! Of course, after now Angband 4.2.3 and FAAngband 2.0.0, here comes Beleriand! :D

EugeneLesnov September 27, 2021 05:19

Oh, I'm so excited :)
Your work is really appreciated

getter77 September 27, 2021 12:32

Looking forward to what comes in due time and course.

EugeneLesnov September 27, 2021 18:04

Quote:

Originally Posted by Nick (Post 155547)
The foundation of the game is the map

I wisely started with a map..(c) J.R.R. Tolkien

Quote:

Originally Posted by Nick (Post 155547)
and I don't really have a clear picture of what you might call a win condition

There is something to think about here..
I'm going to speculate a little, if you please :)
Also, I'm going to take as a basis the maximum closeness to Tolkien's lore.

There are 6 major battles of Beleriand:

1. The First Battle was fought before the Noldor arrived, and was fought by the Sindar, Laiquendi, and Dwarves of the Blue Mountains.
2. The Dagor-nuin-Giliath, or Battle-under-Stars, fought by the Noldor following FŽanor and his Seven Sons.
3. The Dagor Aglareb, or Glorious Battle, which led to the Siege of Angband.
4. The Dagor Bragollach, or Battle of Sudden Flame, in which Ard-galen burned and many Noldor, including King Fingolfin, were slain.
5. The Nirnaeth Arnoediad or Battle of Unnumbered Tears, in which the Union of Maedhros was utterly broken by Morgoth.
6. The War of Wrath, which defeated Morgoth, ended the First Age of Arda, and destroyed most of Beleriand.

For me personally, Beleriand is associated with the War of Wrath, so..It seems that the ultimate goal should not be to kill Morgoth.
As a result of War of Wrath, Morgoth was sent as prisoner to Aman, where Mandos judged him, and the Dark Lord was "executed".

The main quest probably should not be to kill Morgoth as I said above, but it could be to help the allied forces against Morgoth's armies.

In accordance with the principle of "Divide and Conquer", let's divide this quest into subquests like:

* Destroy Balrogs
* Slain Ancalagon the Black
* Kill some orc commanders
* Descend into the Angband dungeon
* Weaken Morgoth to bound him with chain Angainor (Gameplay feature of using quest items?)

As we know, the devastation caused the war left Beleriand mostly destroyed. We can use this fact for gameplay purposes..After each subquest, part of the map may "disappear" as a result of the war (It might be randomized?).

According to "The Tale of Years" War of Wrath lasted for more than four decades (F.A. 545 - 587). It seems natural that some territories changed hands.
To make the war feel "real", we can divide the large map into "zones" that might be occupied by allied forces, might be neutral or might be under the control of the enemies.
This will give us a basis for calculating the "danger" level for the current zone the player is in.

Sorry if this seems sketchy. I just wanted to start brainstorming...Maybe some ideas might come in handy.

Mondkalb September 28, 2021 09:11

:):):):D:D:D:cool::cool::cool:

Nick September 28, 2021 10:34

Quote:

Originally Posted by EugeneLesnov (Post 155557)
I'm going to speculate a little, if you please :)

I am far from decided, but you've hit fairly close to my current plans.

The plan is to set the game after the third kinslaying, with all the major elven strongholds destroyed and the land overrun by servants of Morgoth. So there should be a feeling of walking through the broken remains of everything the Noldor and the Sindar had created.

I also plan to have a fixed timeline, so if the character survives long enough the Valinorean host should arrive in preparation for the War of Wrath. I'm leaning toward that being the end of the game, but am not sure what the player should be trying to achieve by then.

I'm just trusting that I can make it up as I go along :)

EugeneLesnov September 28, 2021 10:40

Oh, sounds amazing. May the bless of Valar be with you :)

P.S. To be honest, I'm burning with impatience :D

Nick January 2, 2022 01:24

Latest
 
Some progress, but also some scope creep.

I have pretty rudimentary (and buggy) map generation going. I have changed the scale again to make the map even bigger, with each game grid having an in-game width of 2 metres. I have played a bit with the idea of a zoom function, so the player can see a bigger area while moving, but my current implementation has some performance and other issues.

I then decided to leave the map for a bit and move on to gameplay. My intent from almost the beginning has been to use Sil-style skill trees, and the current Sil competition has led me to go in and look at Sil mechanics a bit more. This has led me to two conclusions:
  1. I really want to incorporate a large part of Sil - monster behaviour, probably combat, singing to replace magic, smithing, ... - so Beleriand is starting to look to me like a Sil variant;
  2. Incorporating the code to do this looks like a massive exercise, so I have decided that the "easiest" way to do this is to actually rewrite Sil to use current Angband code (modernising stuff like datafiles and parsing, modularity of effects, UI separation, etc) first.
This is a clearly ridiculous course of action, so maybe I will change my mind (it's not like that never happens). But at this point it looks like I am taking on preparation of an unofficial version of Sil to go with maintaining Angband and FAangband and preparing Beleriand. Please feel free to tell me how stupid I am being - I am literally asking for it.

HugoVirtuoso January 2, 2022 01:27

Is there any way you can provide a preliminary alpha version for gameplay testing on webserver or elsewhere?

Nick January 2, 2022 01:38

Quote:

Originally Posted by HugoTheGreat2011 (Post 156822)
Is there any way you can provide a preliminary alpha version for gameplay testing on webserver or elsewhere?

It's actually being autobuilt like V and FA here, but most of the changes are downstream updates from those, and the actual "game" is mostly non-functional, and the bits that do work are slated to be replaced by other bits. So if you're prepared to be completely misled, go right ahead ;)

clouded January 2, 2022 07:16

"After the refactor" is just classic Nick.

Nick January 2, 2022 08:13

Quote:

Originally Posted by clouded (Post 156827)
"After the refactor" is just classic Nick.

Well, when you put it like that...

Quirk January 12, 2022 01:14

Quote:

Originally Posted by Nick (Post 156821)
[*]Incorporating the code to do this looks like a massive exercise, so I have decided that the "easiest" way to do this is to actually rewrite Sil to use current Angband code (modernising stuff like datafiles and parsing, modularity of effects, UI separation, etc) first.

If I were implementing a new version of Sil and prepared to invest enough time to refactor it properly, I would not refactor it but would start from scratch. There is a good deal which is not fit for purpose which should be simply thrown away - in particular, anything related to level generation or item generation. A good deal of the codebase is simply dead code.

Of the rest, it's sprawling and disorganised and repeats itself in far too many places. There is a lot of magic global nonsense going on. The interfaces for the tiles are limited in the extreme and I had to institute some very dirty hacks to make various overlays work. Anything related to the UI is a royal pain.

Attempting to keep too tightly to the existing codebase risks inheriting its many and severe limitations.

Probably the only thing worth studying in depth before reimplementing would be the monster AI - it's not horrendously complicated, and doesn't sprawl too badly by Sil standards, but it's non-trivial. Much of the rest would be faster and better implemented from scratch to modern coding standards.

Nick January 12, 2022 01:37

Quote:

Originally Posted by Quirk (Post 156981)
If I were implementing a new version of Sil and prepared to invest enough time to refactor it properly, I would not refactor it but would start from scratch. There is a good deal which is not fit for purpose which should be simply thrown away - in particular, anything related to level generation or item generation. A good deal of the codebase is simply dead code.

That's essentially what I'm doing - the aim is to get the gameplay of Sil in a codebase that looks like it's been forked from current Angband. I have made decent progress with modernising the data files, and also making changes to support that (parsing, etc). It's going to take a while, but I'm currently feeling it's doable.

You're quite right about dead code.

Whether you would ever want to redo Sil-Q on top of the finished product when it emerges is a whole nother question. The advantages would be better tile, UI and front end support; the disadvantages are obvious :)

Quirk January 12, 2022 11:50

Quote:

Originally Posted by Nick (Post 156982)
That's essentially what I'm doing - the aim is to get the gameplay of Sil in a codebase that looks like it's been forked from current Angband. I have made decent progress with modernising the data files, and also making changes to support that (parsing, etc). It's going to take a while, but I'm currently feeling it's doable.

Doable yes but probably months of full-time effort.

The fiddly stuff to rewrite around geometric calculations you probably already have from Angband, so this makes things much easier and you are probably the best placed to do this. The sound dispersal (for stealth/song) and morale system are probably the only interestingly algorithmic bits needing ported across.

However, reading and understanding the existing code will be a substantial time cost and there are many elements that will still need design work after a reimplementation e.g. the level generation, which is currently following a terrible algorithm not guaranteed to terminate in a viable level, will still need to handle forge placement after an improved version is written.

If you have the time and are interested in doing this, why not?

Quote:

Originally Posted by Nick (Post 156982)
Whether you would ever want to redo Sil-Q on top of the finished product when it emerges is a whole nother question. The advantages would be better tile, UI and front end support; the disadvantages are obvious :)

Unfortunately my own time is at a premium right now as I flit between continents and the day job ramps up. I was substantially restricted in my ability to make even simple improvements because the codebase dysfunction made them rather less trivial than they should have been.

I am likely to pause Sil-Q development for quite a long time. If you wanted to use it as a basis for the refactoring I would have no issues with this - a lot of Sil bugs were fixed over the period I worked on Sil-Q - but I haven't made any significant attempts to clean the code up so it would be no easier as a starting point.

Nick January 12, 2022 20:28

Thanks, that helps my thinking along. We'll just see how it goes, I guess.

One of the benefits of doing this is that it has the potential to highlight places where the Angband code could be better written or organised - in fact, this has started to happen already.

Pete Mack January 12, 2022 20:40

Quirk--
I don't think you are aware of how much the Angband codebase has improved, post 3.0.5--it doesnt look anything like NPP anymore, by and large.
A lot of duplicated code is just gone, with loops and/or function pointers replacing case statements.

Quirk January 12, 2022 23:38

Quote:

Originally Posted by Pete Mack (Post 157000)
Quirk--
I don't think you are aware of how much the Angband codebase has improved, post 3.0.5--it doesnt look anything like NPP anymore, by and large.
A lot of duplicated code is just gone, with loops and/or function pointers replacing case statements.

I'm sure it has, but I was talking about the Sil code, which has undergone a lot of messy evolution on top of the copy and paste.

My brief impressions last I looked at the Angband code were that it had been very much improved. Unfortunately though, moving Sil across to a newer cleaner framework involves parsing the existing tangle first.

Nick January 13, 2022 00:05

Quote:

Originally Posted by Quirk (Post 157002)
Unfortunately though, moving Sil across to a newer cleaner framework involves parsing the existing tangle first.

Fortunately (as you observe) I am probably uniquely well-placed to do this, having worked on code from Oangband (forked from V2.8.3) right through to current. While a few of the changes made by NPP are unfamiliar to me, mostly I can recognise quickly what is new Sil code and where it needs to be placed in the Angband framework. In particular, starting by turning the edit files and their parsing into the modern idiom works really well, because it then leads naturally into changes in things like spell effects and ID. The hardest bits to do will probably be those you identify as interesting :)

Quirk January 13, 2022 01:35

It's a bit of a shame that there is not (to the best of my knowledge) any source controlled repo available that tracks the development from NPP to Sil. This would have been useful to provide more context for many of the changes.

I imagine much of the item flags stuff around slays and resistances will port across straightforwardly. Sil's light level implementation shouldn't be too hard to replicate even if it doesn't perfectly align with what Angband does already. The abilities have quirks in places - many or most are quite simple, but a few require more book-keeping or add complexity to overly large functions such as those dealing with the player hitting or shooting a monster.

One challenge is to identify the dead code which is not obviously dead - gated by variables that never take certain values in Sil. I think there's a bunch of randart stuff that falls under this umbrella.

Nick January 13, 2022 02:53

Quote:

Originally Posted by Quirk (Post 157004)
It's a bit of a shame that there is not (to the best of my knowledge) any source controlled repo available that tracks the development from NPP to Sil. This would have been useful to provide more context for many of the changes.

There is this, which I'm using heavily.

Quote:

Originally Posted by Quirk (Post 157004)
One challenge is to identify the dead code which is not obviously dead - gated by variables that never take certain values in Sil. I think there's a bunch of randart stuff that falls under this umbrella.

All the randart stuff, as far as I can tell :)

Quirk January 13, 2022 21:01

Quote:

Originally Posted by Nick (Post 157006)
There is this, which I'm using heavily.

That probably helps!

Quote:

Originally Posted by Nick (Post 157006)
All the randart stuff, as far as I can tell :)

Yup. Also the automaton, and Amiga support. I think there are a few flags in the Windows support also but it's been some months since I last had to wrestle with them.

Nick January 13, 2022 21:13

Quote:

Originally Posted by Quirk (Post 157014)
Yup. Also the automaton, and Amiga support. I think there are a few flags in the Windows support also but it's been some months since I last had to wrestle with them.

Front end support I'm hoping will be almost free, due to all the work that has been put into it for Angband (mainly not by me, and mainly recently by backwardsEric).

I was wondering about the automaton. Does it work in any sense?

Quirk January 14, 2022 02:54

Quote:

Originally Posted by Nick (Post 157015)
Front end support I'm hoping will be almost free, due to all the work that has been put into it for Angband (mainly not by me, and mainly recently by backwardsEric).

I was wondering about the automaton. Does it work in any sense?

I didn't test it very thoroughly but my impression was that it had never been adapted to Sil at all. I ripped it out of Sil-Q.

clouded January 14, 2022 07:24

There's this cryptic thread about the automaton by half. Seems he did make it for sil but it's extremely basic.

Quirk January 14, 2022 11:55

Welp, this is what I get for not having looked at it for a few years. I'm way off base. There's a giant comment at the top of the file even that it's designed for Sil specifically...

However, yes, it is very simple. It doesn't deal with abilities, or item flags, or consumables, or running out of inventory space, or many more things. It is however capable of wandering around, finding a bow and arrows, and shooting enemies, which is somewhat cool. It

It might be possible to repurpose some bits of this to copy some of the functionality Brogue has around automatically going to the nearest down stairs and stopping if an enemy is sighted, which is rather nice as a UI feature.

More validly "unused" elements would be things like RBE_LOSE_MANA, RBE_UN_POWER, RBM_SPORE etc.

HugoVirtuoso January 29, 2022 14:25

http://lotrproject.com/map/beleriand...layers=BTTTTTT

This is probably someone else LOTR's Beleriand's map project. Nick, what do you think of this map's accuracy?

Nick January 29, 2022 22:11

Quote:

Originally Posted by HugoVirtuoso (Post 157280)
This is probably someone else LOTR's Beleriand's map project. Nick, what do you think of this map's accuracy?

It's not bad. It's based on CJRT's map for the published Silmarillion; I've been working from JRRT's "Second Silmarillion map" as it appears in Volume 11 of History of Middle Earth - here's an online version.

half February 2, 2022 13:29

I just dropped by and was delighted to see movement on Beleriand. Nick, you are entirely welcome to use any or all of Sil's ideas and/or implementation in Beleriand. It would be a wonderful home for many of these ideas.

As it forked off NPP 0.4.1, the code base pre-dates a lot of improvements that were made to V. And I'm sure I lowered the standard a bit more too, with some idiosyncratic ways of doing things (sorry Quirk!). One helpful thing is that I usually kept the rules simpler than is the norm in V. e.g. even behind the scenes calculations for monster generation etc was usually done in such a way that it would make sense to explain in a rule book. The complexity standard was something like AD&D 2nd edition, (whereas V allowed crazier stuff than even Gygax would have come up with, where you are dividing equations by random numbers between 1 and your dungeon level, and things like that).

Re the history of the code etc, I've just gone on a quest to see how much I've kept and … it's a lot. Heaps of old code and ideas files going back through all alpha versions and as far back as simple changes to edit files in 2001. I'll contact you (Nick) about how to get this historical archive to you.

Nick February 2, 2022 20:30

Quote:

Originally Posted by half (Post 157361)
I just dropped by and was delighted to see movement on Beleriand. Nick, you are entirely welcome to use any or all of Sil's ideas and/or implementation in Beleriand. It would be a wonderful home for many of these ideas.

Nice to see you here :)

I was planning to email you when I was a little further along in the process. This thread has some useful ideas. One interesting thing is that Sil has the strict clock and sense of confinement, and I'm aiming to do almost the opposite.

Quote:

Originally Posted by half (Post 157361)
As it forked off NPP 0.4.1, the code base pre-dates a lot of improvements that were made to V. And I'm sure I lowered the standard a bit more too, with some idiosyncratic ways of doing things (sorry Quirk!). One helpful thing is that I usually kept the rules simpler than is the norm in V. e.g. even behind the scenes calculations for monster generation etc was usually done in such a way that it would make sense to explain in a rule book.

I think you're being hard on yourself here. As you say, Angband code has improved a lot since NPP forked. Takkaria deserves most of the credit for that (both actual coding and the vision for what needed to be done), but also there have been a huge number of people who have pitched in and fixed particular bits of it.

I'm fairly deep in the Sil 'translation' at the moment, and pretty happy with how it's going. I am certainly seeing the virtue in your simplicity of rules, and it should translate into code that is in some places much cleaner and simpler than V's. As usual with this sort of task, it's pointing out ways in which the V code can be improved, and also some Sil features that could be imported (the hit display, for example).

Quote:

Originally Posted by half (Post 157361)
Re the history of the code etc, I've just gone on a quest to see how much I've kept and … it's a lot. Heaps of old code and ideas files going back through all alpha versions and as far back as simple changes to edit files in 2001. I'll contact you (Nick) about how to get this historical archive to you.

This is excellent, I'll look forward to it. I already seem to be becoming some kind of archivist, so this should fit right in :)

Quirk February 3, 2022 22:22

Quote:

Originally Posted by half (Post 157361)
As it forked off NPP 0.4.1, the code base pre-dates a lot of improvements that were made to V. And I'm sure I lowered the standard a bit more too, with some idiosyncratic ways of doing things (sorry Quirk!). One helpful thing is that I usually kept the rules simpler than is the norm in V. e.g. even behind the scenes calculations for monster generation etc was usually done in such a way that it would make sense to explain in a rule book.

I think it's inevitable that you won't produce your best code when extending a messy codebase - I am certainly not proud of the implementation of all my additions either, but the effort required to perform a clean re-implementation often feels prohibitive and so the existing pattern gets extended with all its warts, or hacked.

I do very much appreciate the consistency of the core rules, which I think has made the game much easier both for players to understand and developers to balance. I've certainly expanded my grasp of dice probability distributions through working on Sil-Q!

half February 4, 2022 10:43

Yes, I spent a lot of time thinking through some of those probability distributions and dice. The historical progression was something like this:

I didn't like the flat distribution on attack rolls in D&D (1d20+bonus vs AC), and I thought that 2d10 was better. I liked the idea of opposed rolls though, and at some point realised that 1d10+attack vs 1d10+AC was equivalent, but more elegant. It also generalised to some of the other skills I was thinking of and made me think that there could be an evasion skill that went up with experience (unlike D&D where, strangely, only attack does and AC tends to scale only with increasingly magical armour). During balancing, I realised that melee/archery/evasion were still too good compared to other skills and ended up giving them 1d20 rolls to balance them, adding some slight inelegance back.

I'd decided early on that I wanted to try a damage reduction system, as I noticed it allowed an interestingly multi-dimensional system for weapon choice vs different armour, and also for how these fit with different combinations of stats for the user. e.g. that you could make a system where if the opponent had light armour, you would be best with a light weapon against them (as it is sufficient to get through and has higher chance of hitting). This seemed interesting, natural, and modelling real world developments. It gets lost a little in the game as there are so many enemies and you can't micromanage it, but the system would also work well for a table top game where there were few, but high stakes duels against another person.

I started with flat numbers of damage reduction, as is standard, but then noticed that using dice for it (what I call 'protection') completes the duality between attack and defence, where you can have (+3, 1d10) vs [-2, 1d6] or whatever. And after the opposed rolls to hit, there are opposed rolls for damage.

As is often the case, it was a case of a few goals and quite a bit of time mulling them over and trying things out that eventually led to a very simple and elegant base system that really felt like a natural sweet spot in the space of combat systems.

Quirk February 5, 2022 19:02

The opposed rolls really make the system. In particular I think the damage vs armour rolls are inspired. The old D&D rules are for me a bit of a failure both as simulation and on a tactical level (though in their defence combat is not too slow, and they inspired a lot of other people to do better), and Sil is a much more elegant and comprehensive attempt at modelling combat. I would class it above most tabletop combat systems, and in terms of tactical accessibility few other computer games have the same richness.

There are many elements that combine ingeniously. The malus for being surrounded and the morale and aggression systems are a couple more I'd highlight as significant influences on the gameplay.

That said, since we're on the Beleriand thread, there are a number of issues I have found over the years in balancing the game which would be useful to learn from if developing a new game.

You put your finger on a key theme with Melee/Evasion - which, to extend more broadly, is that while symmetry is seductive sometimes following symmetry leads to systems being pulled out of balance and the player experience can be pulled away from the sweet spot in order to make the character development screen look neater. I think there is sometimes a need to draw separating lines between how dissimilar systems work and stop forcing symmetry, and that your call with the opposed 1d20s was absolutely necessary.

In general, one size does not fit all with probability distributions. One issue with all normal distributions is that skill investment snowballs. Opposed 1d10s are particularly vulnerable here because it's quite a narrow distribution.

(If you have 6 skill points more than your opponent, you are already at 90% odds to win; one more takes you to 94%, one more 97%, one more 99%, then 100%. The first investment takes your opponent's victories from 1 in 10 to 3 in 50, the second halves this to 3 in 100, then cuts by a further two-thirds to 1 in 100, then your opponent winning is impossible. Increasing from 1 point ahead of your opponent to 2 conversely only takes your odds from 64% to 72%, i.e. taking your opponent from slightly better than winning 1 in 3 to slightly worse than winning 2 in 7.).

I suspect much of the time d10s are chunkier than would be ideal, because relatively small differences in skills can divide enemies into groups which are almost entirely neutralised by the check (for e.g. stealth, Lorien, Mastery) and groups which are quite dangerous.

Small differences in skills mattering a lot make it more challenging as the balancing developer to understand what range of skills players might be bringing to a particular encounter and hence what fair stats are for enemies, how good does a bonus on an item have to be before it's too good, etc.

Much of this is balanced by the variety of systems - e.g. the chunkiness of the stealth/perception check is lessened by the modelling of sound attenuation and other perception elements so the stealth experience overall is smoothed into a thing of beauty - but unfortunately where things most tend to break down is the late game, which would ideally be the tensest and most exciting part. This is very much the case with Evasion even though it uses d20s and much more investment is needed to more or less shut down enemies altogether.

"Sil is subtle", as they say. In other places also changing a single number can make for a world of difference. Balancing shortswords and daggers has been tricky for precisely this reason: the difference between a d5 dagger and a d6 dagger is substantial, and balancing so that a d5 dagger is potentially relevant to a fresh character and a d6 not overpowered to a stabber is a hard problem that has led me to drawing a lot of graphs.

In summary I would advise Nick to start with larger numbers and possibly wider distributions. This means a simple increment or decrement makes for a smaller percentage difference, and balancing becomes less fiddly. I would suggest also that symmetry often needs to be broken between systems that function very differently and it's maybe best to start by considering the needs of the systems and identifying where things are alike enough to overlap mechcanically rather than stretching the same mechanic over everything.

All this comes however from a place that could be considered perfectionist. Sil mechanics are honed to a degree few other games of my experience match, and if they could be honed further, it's probably only a few obsessives like myself who would notice or care.

half February 7, 2022 22:17

Quote:

Originally Posted by Quirk (Post 157437)
In other places also changing a single number can make for a world of difference. Balancing shortswords and daggers has been tricky for precisely this reason: the difference between a d5 dagger and a d6 dagger is substantial, and balancing so that a d5 dagger is potentially relevant to a fresh character and a d6 not overpowered to a stabber is a hard problem that has led me to drawing a lot of graphs.

Yes, this is quite extreme. One of my aims was to reduce the numbers that appear in the game down to a manageable size. I think I ended up with numbers that are about half way between D&D numbers and Angband numbers (and much lower than, say, JRPG numbers). But unlike D&D, I wanted all weapons to be unique and not have any that are strictly better or worse than each other. And I needed to do this while having the numbers be thematic for that weapon (e.g. that they would end up being good when wielded by the kind of character that intuitively would be good at wielding them in the real world).

For some reason I seem to have been anchored to the Angband longsword at 2d5. So that is where I started. And through variation in the five numbers: attack, dice, sides, evasion, and weight, I managed to meet all my objectives. It wasn't easy, as these were also the numbers I needed to later tweak to adjust balance, leaving little room to move.

To top this off, I had various aesthetic ideas about how the numbers should look. I started with a triple of swords: the dagger (1d5), the longsword (2d5) and the greatsword (3d5), which seemed elegant. And then I decided to make all chopping weapons (e.g. axes) do even sided dice, while others do odd sided dice.

So there was indeed very little room to tweak things. It ended up a bit like a short poem, or similar, where it is highly constrained and every part has a purpose, and it becomes remarkable that it is possible at all. I love this kind of thing (especially the end product) as something to marvel over, but you are very much right that can be a lot of work!

Estie February 8, 2022 04:09

I wonder what odd taste for structural poetry is responsible for the 8d1 hammer in vanilla.

Quirk February 8, 2022 19:05

Quote:

Originally Posted by half (Post 157482)
Yes, this is quite extreme. One of my aims was to reduce the numbers that appear in the game down to a manageable size. I think I ended up with numbers that are about half way between D&D numbers and Angband numbers (and much lower than, say, JRPG numbers). But unlike D&D, I wanted all weapons to be unique and not have any that are strictly better or worse than each other. And I needed to do this while having the numbers be thematic for that weapon (e.g. that they would end up being good when wielded by the kind of character that intuitively would be good at wielding them in the real world).

This I consider one of the game's great successes, though as you say the tightness of the numbers can leave relatively little room to tweak things: most weapon types are viable right down to Morgoth (at least as artifacts, or smithed) assuming the character is built to take advantage of them. However, if I were embarking on a new project and wanted to make use of similar mechanics while preserving the goal of every weapon being unique, I would consider very carefully how many weapons I wanted the game to have before settling on the numbers.

Sil is definitely much like a poem. The constraints, of this type and others, have at times seemed torturous as I have laboured to balance a weapon or replace a skill. It's instilled in me a deep respect for the original vision that worked so fully with such a small and consistent palette.

I am curious to see what Nick will do drawing on Sil as an inspiration.

Nick February 8, 2022 22:37

Quote:

Originally Posted by Quirk (Post 157503)
I am curious to see what Nick will do drawing on Sil as an inspiration.

Yeah, me too.

LordL April 8, 2022 09:37

How is it going?

Nick April 8, 2022 11:51

Quote:

Originally Posted by LordL (Post 158184)
How is it going?

Fine, but slow - or maybe more precisely, there's a lot to do. I'm probably something like halfway through getting the rewrite of Sil done.


All times are GMT +1. The time now is 04:14.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2022, vBulletin Solutions Inc.