Announcement: Why not try our official idea generator for inspiration when making puzzles?


Caravel Forum : DROD Boards : Architecture : Torus
New Topic New Poll Post Reply
Poster Message
Insoluble
Level: Smitemaster
Avatar
Rank Points: 1638
Registered: 09-04-2014
IP: Logged

File: Torus.hold (1.8 MB)
Downloaded 42 times.
License: Public Domain
icon Torus (+5)  
Hey all. Someone proposed the idea in chat of doing DROD on a compact surface other than a traditional plane with boundary. Okay, maybe it was me. I honestly don't remember. At any rate, I thought it would be fun to script up DROD on a torus. So here it is. My scripting chops are nonexistent, so there was probably a much cleaner way of doing this. But hey, it seems to work.

UPDATE: Sent to HA. Thanks for testing everyone!
UPDATE: This has been promoted. You can go download it here

Old first post text & update text hidden, no longer applies.
Click here to view the secret text


____________________________
Links to neat forum tools that I always have trouble finding:
Click here to view the secret text


[Last edited by Insoluble at 11-15-2016 07:21 PM]
09-27-2016 at 06:24 AM
View Profile Send Private Message to User Send Email to User Show all user's posts This architect's holds Quote Reply
Red-XIII
Level: Smitemaster
Avatar
Rank Points: 623
Registered: 08-05-2012
IP: Logged
icon Re: Torus (+1)  
First reaction: :w00t

This looks really interesting and fun! When I played the room it felt like the old snake game from Nokia 3310, which is nice.
Also, this leads to the question on how other monsters would react to this, for example (since I mentioned them) snakes or tarstuff growth.
The main ideas for puzzles IMO are manipulation and hoarde management, but you could build excellent linchpin puzzles as well, I think there's a lot of versatility in this type of gameplay.
The idea of the Klein bottle is good too, though I don't understand if you want to extend it to a single room or an entire level.
By the way, since it's a torus you could also build the center hole, though I have no idea if it's possible to script it.

I'd love to see a hold with this gameplay!


____________________________
There's not some other world out there where everything's gonna be okay.
There's just this one, just this rock.
-33th Skywatcher
09-28-2016 at 01:20 PM
View Profile Send Private Message to User Send Email to User Show all user's posts This architect's holds Quote Reply
Insoluble
Level: Smitemaster
Avatar
Rank Points: 1638
Registered: 09-04-2014
IP: Logged
icon Re: Torus (0)  
Oh hey thanks! I'll try to see if I can look up that snake game later. I'm nowhere near good enough at scripting yet to make a serpent work properly, but tarstuff may be doable. Tar along the bondary would be tricky, but I think it could work. I played around with making constructs last night, and I think roach queens would be possible too. I also managed to make a linchpin puzzle. I'll try to upload some more to this later on this week.

I'm not sure what you mean about building the center hole. Since the game takes place on the surface of the torus, you can't actually see the hole. We'd have to reintroduce the idea of 3D DROD for that to work :). One possibility I guess would be to place an image pit (making it a punctured torus instead of a torus) wherein you can see the other side. That would be pretty cool, but probably beyond my current artistic ability.

As for the Klein Bottle and Projective Plane, I was thinking of just making one room of each. I'm not looking to build a huge hold here. But if some neat ideas for puzzles come to me I'm open to making more. Also, given the nature of this mechanic, this hold will most likely contain only one room per level (since the rooms do not technically have boundaries.)

Some further notes that I possibly should have mentioned in the opening post:

* The scripting has a lot of limitations at the moment. For example, swords crossing the boundary behave really badly. Like, trying to block or stab monsters across an associated room boundary pretty much breaks things. Making this work properly is probably possible, but would be a royal pain to script, so I'm going to leave this as is for now.

* I have a decision to make about monster behavior when Beethro is equidistant from a monster. At the moment, when Beethro is simultaneously 15 tiles North and 15 tiles south of the same Torus Roach, it breaks that tie by forgetting it is on a torus for one turn and just moving towards Beethro in whichever direction is closest on a plane. This is really inelegant. I think the most elegant solution would be for the roach to freeze all vertical movement and just move horizontally towards Beethro until he breaks that symmetry. The main problem I see with this is that it would involve a tone of scripting for special cases and I'm lazy. I'd love to hear suggestions for alternate tie breaking that would be easyish to script but still relies on the torus distances.

*Also, hey if anyone is really into this idea and wants to make this a collaborative effort I'm open to making this a joint venture. Also, if you just want to make your own rooms with a torus topology, feel free to use any of the horribly cobbled together scripting I've done.

____________________________
Links to neat forum tools that I always have trouble finding:
Click here to view the secret text


[Last edited by Insoluble at 09-28-2016 02:21 PM]
09-28-2016 at 02:16 PM
View Profile Send Private Message to User Send Email to User Show all user's posts This architect's holds Quote Reply
IQubic
Level: Delver
Rank Points: 78
Registered: 11-22-2015
IP: Logged

File: Torus Torus The Entrance Bug.demo (1.2 KB)
Downloaded 42 times.
License: Public Domain
icon Re: Torus (+1)  
Here is a demo showing a bug.

____________________________
119th Skywatcher
09-28-2016 at 04:28 PM
View Profile Send Private Message to User Show all user's posts Quote Reply
LeoS
Level: Master Delver
Rank Points: 276
Registered: 04-02-2015
IP: Logged
icon Re: Torus (+1)  
What an idea! It's fun to just hold a diagonal move key down and watch Beethro zip around! Not to be nitpicky, though (and I'm no topographer), but seeing as you can scroll around E/W and N/S, shouldn't this be called "Sphere"? :unsure
09-28-2016 at 07:45 PM
View Profile Send Private Message to User Show all user's posts High Scores Quote Reply
Xindaris
Level: Smitemaster
Avatar
Rank Points: 1531
Registered: 06-13-2015
IP: Logged
icon Re: Torus (+2)  
Spheres don't project neatly onto a plane the way that a torus does; you have to do some kind of messy thing that ignores one of the poles or stretches it or whatever. A torus is what you actually get (in some sense of "actually") when you take a square or rectangular-shaped thing and directly connect up the E/W and N/S ends.

____________________________
109th Skywatcher

Here are some links to Things!
Click here to view the secret text


[Last edited by Xindaris at 09-28-2016 08:05 PM]
09-28-2016 at 08:04 PM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
hyperme
Level: Smitemaster
Avatar
Rank Points: 1067
Registered: 06-23-2006
IP: Logged
icon Re: Torus (+1)  
Insoluble wrote:
* The scripting has a lot of limitations at the moment. For example, swords crossing the boundary behave really badly. Like, trying to block or stab monsters across an associated room boundary pretty much breaks things. Making this work properly is probably possible, but would be a royal pain to script, so I'm going to leave this as is for now.

This doesn't seem too grim, until you take the corners in to account. Otherwise, you can have a 'phantom Beethro' that shows up on the appropriate opposite when next to a boundary.

* I have a decision to make about monster behavior when Beethro is equidistant from a monster. At the moment, when Beethro is simultaneously 15 tiles North and 15 tiles south of the same Torus Roach, it breaks that tie by forgetting it is on a torus for one turn and just moving towards Beethro in whichever direction is closest on a plane. This is really inelegant. I think the most elegant solution would be for the roach to freeze all vertical movement and just move horizontally towards Beethro until he breaks that symmetry. The main problem I see with this is that it would involve a tone of scripting for special cases and I'm lazy. I'd love to hear suggestions for alternate tie breaking that would be easyish to script but still relies on the torus distances.

Just use the general NESW preference snakes use. That way the roach always does the same thing.

*Also, hey if anyone is really into this idea and wants to make this a collaborative effort I'm open to making this a joint venture. Also, if you just want to make your own rooms with a torus topology, feel free to use any of the horribly cobbled together scripting I've done.

i know i'll script Torus Darts :P

____________________________
[Insert witty comment here]
Qzvlkx?
09-28-2016 at 08:37 PM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
Insoluble
Level: Smitemaster
Avatar
Rank Points: 1638
Registered: 09-04-2014
IP: Logged
icon Re: Torus (+3)  
IQubic wrote:
Here is a demo showing a bug.
Thanks! Yeah, the scripting is definitely busted for situations where the move across the boundary is blocked by another entity. I'll have to try to come up with a workaround for this. Out of curiosity, what was the move you inputted between turn 172 and turn 173?

Also, in response to LeoS and Xindaris and others asking about stuff: I apologize for not really talking much about what is going on here and just basically posting a thing with little explanation. The Wikipedia page for Torus has some good graphics and explanations for what is happening. This graphic may help:



If/when I eventually try to make a for real hold out of this I should probably try to put some more (optional) explanatory stuff in there for those not as familiar with quotient spaces in topology.

Also, you can do something similar for a sphere (and a couple of other surfaces and some non-manifold spaces as well). Associating the room boundaries to make a sphere would be somewhat more complicated though, but it can be done. The easiest way would be to think of folding the room in half along a spine in the middle and associate every point on the room boundary with the point that it is the mirror image of. It would feel more like a sealed rectangular envelope than what people normally think of as a sphere, but those two things are topologically equivalent. This would be pretty awkward from a game-play standpoint though, especially in terms of distance computation (and yeah, things break down at the polls).

____________________________
Links to neat forum tools that I always have trouble finding:
Click here to view the secret text

09-29-2016 at 03:29 AM
View Profile Send Private Message to User Send Email to User Show all user's posts This architect's holds Quote Reply
Xindaris
Level: Smitemaster
Avatar
Rank Points: 1531
Registered: 06-13-2015
IP: Logged
icon Re: Torus (0)  
I haven't had a chance to look at the hold in my busy week, I was just trying to explain why a torus rather than a sphere. I do understand what torus is, but I guess if my explanation came off like I didn't it must mean it was a remarkably poor one.

____________________________
109th Skywatcher

Here are some links to Things!
Click here to view the secret text

09-29-2016 at 04:30 AM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
Insoluble
Level: Smitemaster
Avatar
Rank Points: 1638
Registered: 09-04-2014
IP: Logged
icon Re: Torus (+1)  
Oh, sorry, that was meant more for LeoS and anyone else who might come along in the future and not be familiar with this stuff. Mostly because I realized after the fact that I probably should have posted at least some sort of explanation for this thing.

____________________________
Links to neat forum tools that I always have trouble finding:
Click here to view the secret text

09-29-2016 at 09:41 AM
View Profile Send Private Message to User Send Email to User Show all user's posts This architect's holds Quote Reply
LeoS
Level: Master Delver
Rank Points: 276
Registered: 04-02-2015
IP: Logged
icon Re: Torus (0)  
Thanks, Insoluble... I was envisioning a multi-room hold (laid out East-West, say) where each room allowed N/S scrolling and ultimately if you exited the western border of the hold you'd end up in the easternmost room and vice versa.

DROD: not just Fun, but Informative too! :thumbsup
09-29-2016 at 06:07 PM
View Profile Send Private Message to User Show all user's posts High Scores Quote Reply
Insoluble
Level: Smitemaster
Avatar
Rank Points: 1638
Registered: 09-04-2014
IP: Logged
icon Re: Torus (0)  
Okay, I actually have some rooms now. The hold now includes an intro room and three puzzle rooms (see first post for latest version). One of the puzzle rooms is basically just an implementation of embedding a non-planer graph into the torus which I think is pretty neat but others may find dull. I'll probably add a few more rooms but I'm thinking I still want to keep this under 10 rooms total.

I also mostly fixed the bug IQuibic found. I say mostly because things still are weird with swords across the boundary. Mostly it's just that the roach will jump over your sword. I'm willing to say this is not a big deal as it can be avoided easily in all planned rooms, but I may try to come up with a fix.

I'm also planning to make a level map for this. I'm thinking of forcing the player to start out in the trainer room, but I really hate forcing stuff like that, so maybe not. I'll probably also try to make some sort of optional Torus tutorial room that explains explicitly what is going on, probably with some pictures. As always, any feedback is appreciated.

____________________________
Links to neat forum tools that I always have trouble finding:
Click here to view the secret text


[Last edited by Insoluble at 10-02-2016 08:52 AM]
10-02-2016 at 08:51 AM
View Profile Send Private Message to User Send Email to User Show all user's posts This architect's holds Quote Reply
Insoluble
Level: Smitemaster
Avatar
Rank Points: 1638
Registered: 09-04-2014
IP: Logged
icon Re: Torus (0)  
Hey folks. I have something that's ready for real beta testing finally. All puzzle rooms are complete. I may try to do something more interesting for the 7 color map theorem room, but probably not a puzzle of any kind. There's lots of new stuff including (gasp) custom graphics! Unfortunately my artistic skills are about on par with my scripting skills, but I think it turned out okayish?

Things I would love to hear from beta testers:

* Relative difficulty. I'm trying to make this one more fun than difficult. Shooting for maybe 6 or 7 brains. Let me know if I'm anywhere near that mark.

* Cut scenes and tutorial stuff. It's optional, but is it annoying? Would you like to see more or less of Doris the Torus?

* Spelling/grammar mistakes.

* Horrible scripting bugs (I'm sure they are there.)

* If there's a solution that you're pretty sure is unintended AND not in any way interesting.

Note: I decided not to try scripting up a Klien Bottle or Projective Plain after all. I'm going with Hyperme's suggestion of using N>E>S>W for tie breaking since it is both easy to remember for players and easy to script. Unfortunately this tie breaking wouldn't work for non-orientable surfaces like Klein Bottles and projective plains because, well, you can't actually have a well defined north, east, south, and west. Nuntar has asked if I'd be willing to add some Torus and compact surface stuff to Entry Point, so I'm thinking I'll try to tackle Klein Bottles and Projective Plains for that hold. At the very least, having a non-orientable surface would be a great excuse for a challenge that includes disoriented's name in it as a pun. That'll probably be further down the road after this thing gets published though.

____________________________
Links to neat forum tools that I always have trouble finding:
Click here to view the secret text

10-11-2016 at 07:08 AM
View Profile Send Private Message to User Send Email to User Show all user's posts This architect's holds Quote Reply
Lucky Luc
Level: Smitemaster
Rank Points: 1215
Registered: 08-19-2012
IP: Logged

File: Torus Lucky Luc Demos.demo (14.4 KB)
Downloaded 42 times.
License: Public Domain
icon Re: Torus (+2)  
Okay, so as I've mentioned in chat, I love the idea! Doris' dialogue is awesome (especially "But ... I have diagrams and everything!") and the actual diagram is really neat. I felt like maybe the explanation was a bit lengthy, but for someone who has never seen it before, it may be adequate. And I want to see more of Doris :D

The puzzles themselves were fun, made good use of the torus mechanic, and once I got in the right mindset for them, they were actually pretty doable. I never actually counted squares and just moved until the roach changed direction, which worked fine. Pretty sure I kind of broke Porous Torus. I think the other stuff I did was intended, but just in case, I've attached my demos.

Some individual room comments:
Click here to view the secret text

The scripting seems solid to me, though I didn't actively try to break it. It's a bit weird that the roach can walk onto stairs, but not sure if that can be easily fixed, and I think it only matters in one room at all.

So yeah, that's about it. Very inventive and pretty fun :)
10-18-2016 at 08:50 PM
View Profile Send Private Message to User Show all user's posts This architect's holds Quote Reply
Insoluble
Level: Smitemaster
Avatar
Rank Points: 1638
Registered: 09-04-2014
IP: Logged
icon Re: Torus (0)  
Thanks for the feedback! I'm working on adding some more banter between Doris and Beethro to some of the puzzle rooms. That should appear in the next update. Glad the puzzles were mostly fun and not too annoying. Yeah, even though I love a good count once in a while, I tried to avoid making rooms that would require counting squares. I'm glad you were able to do most of it by feel.

Demos looked good. You did indeed find an alternate solution to Porous Torus. Your solution is by no means trivial though, and still makes use of the Torus mechanic, so I'm inclined to leave it as is. That way folks who do it that way can enjoy the knowledge that they were clever enough to find a solution that eluded the architect :) It you think it's to cheesy though I can try to change the room.
Click here to view the secret text
10-19-2016 at 06:04 PM
View Profile Send Private Message to User Send Email to User Show all user's posts This architect's holds Quote Reply
IQubic
Level: Delver
Rank Points: 78
Registered: 11-22-2015
IP: Logged
icon Re: Torus (+1)  
Me and Insoluble have been talking in CNet Chat. I'll be making some torus queens for the hold.

____________________________
119th Skywatcher
10-24-2016 at 08:14 PM
View Profile Send Private Message to User Show all user's posts Quote Reply
Insoluble
Level: Smitemaster
Avatar
Rank Points: 1638
Registered: 09-04-2014
IP: Logged
icon Re: Torus (0)  
Thanks again IQubic! I'll definitely incorporate a Torus roach into a room. If you want to make a room with it yourself to put in the hold I'll gladly include that too.

A somewhat minor update has been posted. I changed a couple of rooms around which will probably break demos for There's a Torus Before us and Torus Attraction. Sorry everyone. Hopefully the newer versions are slightly better and not slightly worse. Other changes are noted in the first post.

I'll try to finish up the level map and the last bit of dialog scripting this week so that I can have a complete draft of the hold by next Monday. As always, suggestions, recommendations, etc. are welcome.

____________________________
Links to neat forum tools that I always have trouble finding:
Click here to view the secret text

10-25-2016 at 03:46 PM
View Profile Send Private Message to User Send Email to User Show all user's posts This architect's holds Quote Reply
IQubic
Level: Delver
Rank Points: 78
Registered: 11-22-2015
IP: Logged
icon Re: Torus (+1)  
I found a new bug that needs to be fixed: If Beethro and the torus roach are in the same column or row when you step onto the edge of the room, then Beethro goes to the other side of the room, but the roach stays behind on the room edge on the wrong side of the room.

EDIT: I have a slightly dated version of the hold, I'll see if the latest version has this fixed.

____________________________
119th Skywatcher

[Last edited by IQubic at 10-27-2016 11:11 PM]
10-27-2016 at 07:37 PM
View Profile Send Private Message to User Show all user's posts Quote Reply
uncopy2002
Level: Smiter
Rank Points: 431
Registered: 07-28-2014
IP: Logged
icon Re: Torus (+1)  
Okay, so after some thorough thoughts torus tar is harder to implement than I initially thought, but I got an elegent reasoning of K-3,3 and K-4,4 graphs that makes the relevant room not fiddly anymore:

Click here to view the secret text


[Last edited by uncopy2002 at 10-28-2016 02:31 PM]
10-28-2016 at 12:35 PM
View Profile Send Private Message to User Show all user's posts Quote Reply
Insoluble
Level: Smitemaster
Avatar
Rank Points: 1638
Registered: 09-04-2014
IP: Logged
icon Re: Torus (0)  
Another update! This is pretty much the final product. I still need to make one slight change to the level map so that it indicates when a level is complete, but that should be pretty quick to do. I'm thinking if there are no more suggested changes that I'll send this to HA in about a week. So maybe the 12th of November. I would still love to hear any feedback that anyone would like to give!

____________________________
Links to neat forum tools that I always have trouble finding:
Click here to view the secret text

11-05-2016 at 05:35 AM
View Profile Send Private Message to User Send Email to User Show all user's posts This architect's holds Quote Reply
Red-XIII
Level: Smitemaster
Avatar
Rank Points: 623
Registered: 08-05-2012
IP: Logged
icon Re: Torus (+1)  
I'm not sure I can add something new, apparently I was going to write things that were already reported, for example that I casually found out that torus roach can walk on stairs (weird but not a problem at all) or that in Torus Attraction you can get stuck in the third area (by the way, I did find it a bit frustating, since it took me a while to realize I was stuck).
I think all rooms but "There's a Torus before us!" are simple on the first part and then you get stuck until you find the linchpin, which is nice (though I find them a bit hard for me, couldn't manage to solve some rooms). I'm sorry I didn't manage to give detailed comments for individual rooms.

The map is really cool, same thing for the speeches, I laughed a lot :thumbsup

____________________________
There's not some other world out there where everything's gonna be okay.
There's just this one, just this rock.
-33th Skywatcher
11-05-2016 at 11:28 AM
View Profile Send Private Message to User Send Email to User Show all user's posts This architect's holds Quote Reply
Insoluble
Level: Smitemaster
Avatar
Rank Points: 1638
Registered: 09-04-2014
IP: Logged
icon Re: Torus (+1)  
Thanks for the comments! That helps a lot actually. It sounds as though the difficulty is a bit higher than I wanted which I guess I'm okay with a this point, but I'd rather avoid having a situation in which the player can be stuck in a fail state without knowing it. I changed Torus attraction up a bit for the previous version hoping to make it impossible to get irrevocably stuck, but it looks like I didn't quite fix the issue :).

____________________________
Links to neat forum tools that I always have trouble finding:
Click here to view the secret text

11-05-2016 at 03:41 PM
View Profile Send Private Message to User Send Email to User Show all user's posts This architect's holds Quote Reply
Red-XIII
Level: Smitemaster
Avatar
Rank Points: 623
Registered: 08-05-2012
IP: Logged
icon Re: Torus (0)  
Insoluble wrote:
Thanks for the comments! That helps a lot actually. It sounds as though the difficulty is a bit higher than I wanted which I guess I'm okay with a this point, but I'd rather avoid having a situation in which the player can be stuck in a fail state without knowing it. I changed Torus attraction up a bit for the previous version hoping to make it impossible to get irrevocably stuck, but it looks like I didn't quite fix the issue :).

If you can't fix it by modifying the room layout, what about putting a force arrow so that the player knows for sure that he must not lure the torus roach there?
Also, this is not crazy difficulty, it just requires some time to fully get used to this behaviour; for example, I sometimes stared at the room for 5 minutes without doing anything but watch and try to find a good route, which is something I like to do in DroD puzzles.

____________________________
There's not some other world out there where everything's gonna be okay.
There's just this one, just this rock.
-33th Skywatcher
11-05-2016 at 04:15 PM
View Profile Send Private Message to User Send Email to User Show all user's posts This architect's holds Quote Reply
Insoluble
Level: Smitemaster
Avatar
Rank Points: 1638
Registered: 09-04-2014
IP: Logged
icon Re: Torus (0)  
Okay, I'm pretty certain I've fixed things so that you can't get irrevocably stuck in Torus Attraction now. I've also updated the level map so that it will let you know when a level is cleared. So that pretty much wraps it up! I'll leave this here for another week just in case there are more comments or suggestions, but I'm thinking this is ready for HAs. Thanks again for those who tested:

Lucky Luc, Uncopy, IQubic, and Red-XIII. I'll put a scroll in the hold recognizing you fine folks. Did I forget anyone?

____________________________
Links to neat forum tools that I always have trouble finding:
Click here to view the secret text

11-06-2016 at 03:20 AM
View Profile Send Private Message to User Send Email to User Show all user's posts This architect's holds Quote Reply
New Topic New Poll Post Reply
Caravel Forum : DROD Boards : Architecture : Torus
Surf To:


Forum Rules:
Can I post a new topic? No
Can I reply? No
Can I read? Yes
HTML Enabled? No
UBBC Enabled? Yes
Words Filter Enable? No

Contact Us | CaravelGames.com

Powered by: tForum tForumHacks Edition b0.98.8
Originally created by Toan Huynh (Copyright © 2000)
Enhanced by the tForumHacks team and the Caravel team.