Angband.oook.cz
Angband.oook.cz
AboutVariantsLadderForumCompetitionComicScreenshotsFunniesLinks

Go Back   Angband Forums > Angband > Variants

Reply
 
Thread Tools Display Modes
Old November 18, 2013, 13:54   #11
clouded
Adept
 
Join Date: Jun 2012
Posts: 225
clouded is on a distinguished road
Here are some rooms. Anyone can of course use and modify however they see fit.
clouded is offline   Reply With Quote
Old November 18, 2013, 14:42   #12
chris
PosChengband Maintainer
 
Join Date: Jan 2008
Posts: 702
chris is on a distinguished road
Quote:
Originally Posted by clouded View Post
Here are some rooms. Anyone can of course use and modify however they see fit.
Awesome ... Do you mind if I incorporate these into the next release?

Were you aware of the DEBUG attribute during design? Basically, if you add this attribute (3rd field on the T line) it forces the room picker to pick that choice every time. For example:
Code:
N:575:Small Connected Rooms 6
T:ROOM:NORMAL:DEBUG
W:1:*:1
L:0:MON(*, 5)
M:%%%%%      
M:%..0%      
M:%0..%  %%%%
M:%%%+%%%%..%
M:  %..0.+.0%
M:  %0...%%%%
M:  %%+#%%   
M:   %..%    
M:   %.0%    
M:   %%%%
Of course, you then need to remove the DEBUG attribute when finished.
chris is offline   Reply With Quote
Old November 18, 2013, 16:32   #13
half
Knight
 
half's Avatar
 
Join Date: Jan 2009
Posts: 904
half is on a distinguished road
I really like the modifications to the vault syntax, and have enjoyed looking through clouded's room file. I've added a lot of his previous rooms to the next version of Sil and might add even more from here. I might also borrow some ideas from the new syntax. I had already realised I could have flags to (among other things) allow selected vaults to be rotated. I also want to have some ways of setting symbols to represent different ranges of items and monsters on a vault by vault basis like this does and like crawl does. I'm not sure what syntax to use though, and this is unlikely to make it into the next Sil release.

I'm also glad to see you got rid of those ridiculous height/width numbers that always cause parse errors! I did that recently too. It was about 5 easy lines of code and it should always have been like that.
half is offline   Reply With Quote
Old November 18, 2013, 20:42   #14
Nick
Vanilla maintainer
 
Nick's Avatar
 
Join Date: Apr 2007
Location: Canberra, Australia
Age: 54
Posts: 7,834
Donated: $60
Nick is on a distinguished road
Quote:
Originally Posted by half View Post
I really like the modifications to the vault syntax, and have enjoyed looking through clouded's room file. I've added a lot of his previous rooms to the next version of Sil and might add even more from here. I might also borrow some ideas from the new syntax. I had already realised I could have flags to (among other things) allow selected vaults to be rotated. I also want to have some ways of setting symbols to represent different ranges of items and monsters on a vault by vault basis like this does and like crawl does. I'm not sure what syntax to use though, and this is unlikely to make it into the next Sil release.
I've been messing privately with vault encoding to try and get V vaults and room templates and FA vaults all interchangeable; FA already has the ability to add particular item and monster types to vaults, and V room templates have an item parameter. I like the idea of rotation, too. Maybe we should try to coordinate so all these are interchangeable?

Quote:
Originally Posted by half View Post
I'm also glad to see you got rid of those ridiculous height/width numbers that always cause parse errors! I did that recently too. It was about 5 easy lines of code and it should always have been like that.
*facepalm*

Good job guys, will copy
__________________
One for the Dark Lord on his dark throne
In the Land of Mordor where the Shadows lie.
Nick is offline   Reply With Quote
Old November 19, 2013, 10:39   #15
half
Knight
 
half's Avatar
 
Join Date: Jan 2009
Posts: 904
half is on a distinguished road
Quote:
Originally Posted by Nick View Post
Good job guys, will copy
I do it with the following changes to parse_v_info():

Code:
	/* Process 'X' for "Extra info" (one line only) */
	else if (buf[0] == 'X')
	{
		int typ, depth, rarity;
		
		/* There better be a current v_ptr */
		if (!v_ptr) return (PARSE_ERROR_MISSING_RECORD_HEADER);
        
		/* Scan for the values */
		if (3 != sscanf(buf+2, "%d:%d:%d", &typ, &depth, &rarity)) return (PARSE_ERROR_GENERIC);
        
		/* Save the values */
		v_ptr->typ = typ;
		v_ptr->depth = depth;
		v_ptr->rarity = rarity;
		v_ptr->hgt = 0;
		v_ptr->wid = 0;
	}

	/* Process 'D' for "Description" */
	else if (buf[0] == 'D')
	{
        
		/* There better be a current v_ptr */
		if (!v_ptr) return (PARSE_ERROR_MISSING_RECORD_HEADER);

		/* Get the text */
		s = buf+2;

        if (v_ptr->wid == 0)
        {
            v_ptr->wid = strlen(buf+2);
        }
        else if (v_ptr->wid != strlen(buf+2))
        {
            return (PARSE_ERROR_VAULT_NOT_RECTANGULAR);
        }
            
            
		/* Store the text */
		if (!add_text(&v_ptr->text, head, s))
			return (PARSE_ERROR_OUT_OF_MEMORY);

		// note if there is a forge in the vault
		if (strchr(buf, '0')) v_ptr->forge = TRUE;
        
        // we've added another row of the vault
        v_ptr->hgt++;
        
        /* Check for maximum vault sizes */
		if ((v_ptr->typ == 6) && ((v_ptr->wid > 33) || (v_ptr->hgt > 22)))
			return (PARSE_ERROR_VAULT_TOO_BIG);
        
		if ((v_ptr->typ == 7) && ((v_ptr->wid > 33) || (v_ptr->hgt > 22)))
			return (PARSE_ERROR_VAULT_TOO_BIG);
        
		if ((v_ptr->typ == 8) && ((v_ptr->wid > 66) || (v_ptr->hgt > 44)))
			return (PARSE_ERROR_VAULT_TOO_BIG);
	}
I can't remember exactly what it looked like before this change, but you can probably work out the diff yourself. As an extra bonus, differing length D: lines cause a parse error instead of trashing the dungeon layout and having to be spotted in debug testing. That said, with the DEBUG attribute that would get easier!
half is offline   Reply With Quote
Old November 19, 2013, 13:05   #16
Nick
Vanilla maintainer
 
Nick's Avatar
 
Join Date: Apr 2007
Location: Canberra, Australia
Age: 54
Posts: 7,834
Donated: $60
Nick is on a distinguished road
Quote:
Originally Posted by half View Post
I do it with the following changes to parse_v_info():

Code:
snipped
I can't remember exactly what it looked like before this change, but you can probably work out the diff yourself. As an extra bonus, differing length D: lines cause a parse error instead of trashing the dungeon layout and having to be spotted in debug testing. That said, with the DEBUG attribute that would get easier!
In fact the Vanilla (and FA) parse code has gone through some changes, but the principle is the same. I have just found 15-20 FA vaults (and one in V) with incorrect height or width
__________________
One for the Dark Lord on his dark throne
In the Land of Mordor where the Shadows lie.
Nick is offline   Reply With Quote
Old November 20, 2013, 00:47   #17
dzhang
Scout
 
Join Date: Jan 2008
Posts: 47
dzhang is on a distinguished road
Hi Chris et al!

I really haven't had the time to play at all lately, but I was wondering, has anyone (ahem, Chris) thought about doing meta-game "Achievements" like all the other games do these days? These could be per character (listed on the Winning chardump), or accumulated over all characters. Here's a few off the top of my head:

- Close Call: Be at exactly 0HP.
- Extreme Survival: Be at exactly 0HP, have Cuts > 0, AND be stunned.
- Super Lucky Guy: Find a Power Dragon Scale Mail and a Diamond Edge on the same level.
- Masochist: Kill the Serpent of Chaos while not wearing any armor (shield is OK, since there are ShieldMasters).
- Miss Angband: Find a Sexy Swimsuit as a Sexy female character.
- Allergic to Potions: Consume no potions during an entire game and kill the Serpent of Chaos
- Olympian Bane: Kill all 12 Olympians with the same character
- Gambler: Win at least 1,000,000 gp in a single gambling session in the Gambling Den
- Save the Uniques: Kill no Uniques except Oberon and the Serpent of Chaos.
- Unique Extermination: Kill every unique, including at least 1 instance of every Unique2 (Golden Angel, ZSoC, GCWADL).
- Toughing it out: Kill the Serpent of Chaos on a character with Life Rating less than 80/100.
- Rooted in Reality: Do not Phase Door or Teleport until killing the Serpent of Chaos.
- Precocious: Kill the Serpent of Chaos while never reaching higher than CL 39.
- Living Statues: Be statue-fied by Amberite Blood Curse 7 times, and live to tell the tale! (Does not require killing Serpent of Chaos)
- Transient Embodiment: Polymorph into every possible species on the same character.
- We Die Together: Die immediately after killing the Serpent of Chaos (but before taking another action).
- Chaotic Patron: Suffer 10 terrible effects from Chaos Patrons (e.g. Curse Weapon, Curse Armor, Ruination).
- Nightmare Mastery: Beat the game in Nightmare Mode

Thoughts?
dzhang is offline   Reply With Quote
Old November 20, 2013, 01:55   #18
HugoTheGreat2011
Veteran
 
HugoTheGreat2011's Avatar
 
Join Date: Jan 2012
Location: Mid-Atlantic, U.S.
Age: 36
Posts: 1,042
HugoTheGreat2011 is on a distinguished road
Quote:
Originally Posted by dzhang View Post
Thoughts?
Good ideas. But to encourage this, there should be incentives. The achievements that kill the player outright are extreme, imo. For achievements like Nightmare Mastery, a ulimate-mega-uber-artifact should be generated to be picked up, at say Outpost's inn, to compensate. Or perhaps after Nightmare Mastery conditions are met, maybe player should then automatically gain telepathy AS WELL AS both teleport and light up level at will to make nightmare mode worthwhile? Perhaps, the achievements (including fatal ones) should provide a big boost to the final score?

Last edited by HugoTheGreat2011; November 20, 2013 at 02:07.
HugoTheGreat2011 is offline   Reply With Quote
Old November 20, 2013, 01:57   #19
Patashu
Knight
 
Patashu's Avatar
 
Join Date: Jan 2008
Posts: 526
Patashu is on a distinguished road
DoomRL has a good, working model for achievements, because it tiers achievements by how hard they are to do, from bronze 'anyone can get these' to diamond 'you are a literal god of gaming for doing this'
__________________
My Chiptune music, made in Famitracker: http://soundcloud.com/patashu
Patashu is offline   Reply With Quote
Old November 20, 2013, 02:02   #20
dzhang
Scout
 
Join Date: Jan 2008
Posts: 47
dzhang is on a distinguished road
Quote:
Originally Posted by HugoTheGreat2011 View Post
Good ideas. But to encourage this, I *really* think anyone who achieves ANY of the ABOVE deserves a mega-uber-artifact in compensation.
Hm, I actually tend to disagree... these are for PosChengband experts who want a challenge, so the reward shouldn't be to make the game easier.

But a "cosmetic" reward might be nice. Maybe the Mayor of Morivant will let you rename any one Artifact you find into a name of your choice?

> You have chosen to rename: The Long Sword 'Ringil'
> You are wielding (a) The Long Sword 'Schwartz'

OK, maybe that wouldn't be a great idea either...
dzhang is offline   Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
[Announce] PosChengband 1.0.0 chris Variants 411 October 19, 2014 09:22
[Announce] Poschengband 2.0.0 Released chris Variants 117 October 12, 2013 21:08
Announce DaJAngband 1.2.0 released will_asher Variants 19 March 23, 2010 20:46
Announce DaJAngband v1.0.96 Released will_asher Variants 3 September 30, 2008 19:17
Announce DaJAngband v1.0.95 Released will_asher Variants 1 June 18, 2008 00:31


All times are GMT +1. The time now is 10:47.


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