In response to Lummox JR
Lummox JR wrote:


The lock-and-key puzzles above are arranged from A to G, and some can be solved in a non-linear order. Wherever you see a letter on a path it represents a lock, and a letter in a room represents one of the keys for that lock. If there's more than one key for a lock, all of them are required to open it. (The topological order is A<D, B<C, B<E, C<D, D<F, E<F, F<G. There are two A keys, two D, and two F.)


Neat!
Hey thanks!


I've been trying to get an improved version of the puzzle generator working. So far it's kinda iffy. It generates puzzles successfully much of the time, but there are weird failure cases, and the successful puzzles have so far been only so-so in construction--owing partly to the fact that the number of keys for each puzzle isn't determined in advance anymore.

Below I'm using the term "children" to refer to how many bridges come next right after crossing a given bridge, relative to the start location. So bridges leading to dead ends have no children, but a long corridor would be full of single-child bridges.

An "end" bridge has no children. It is a dead end, good for placing keys.

A "boring" bridge has only one child. This might be a long corridor.

An "interesting" bridge has multiple children. The bridge marked as C above is an interesting bridge, with two children.

The algorithm I'm trying to use right now is this:

1) Start a new chain with an end bridge that hasn't been used yet, if one is available; otherwise pick an unused bridge at random. The chain length is rand(2,3). This chain starts at P.

2) Pick a predecessor Q of P.
2a) If N puzzles have already been chosen but this chain isn't complete, pick Q from the existing puzzle list.
2b) If the number of interesting bridges used so far is less than floor(N/3), there are at least two more puzzles to fill after P, and a probability check is met, pick an interesting bridge if possible.
2c) Otherwise pick an end bridge, or failing that a boring.
2d) Having decided what pool of bridges to pick from, try one and if Q < P (Q precedes P) is a valid relationship for this layout, add it to the list of requirements. This means a key for P will be somewhere behind Q. And if Q was interesting, increase the chain length by 1 so we don't end on an interesting bridge.

3) Q becomes the new P; repeat step 2 until the chain length is met.

4) Repeat step 1 until N puzzles have been picked.

5) If more than one puzzle is not required for any others (multiple goals), choose one of them and make it a requirement for some other existing puzzle (where it would be valid), thereby connecting the chains. Repeat until there is only one goal puzzle.

I found a seed where key generation does not seem to be working, so I'll have to figure that out. I don't really distrust the current key placement algorithm.

All in all, it would probably be a lot easier to simply try connecting puzzles randomly all over the map until no more are possible, and then trim the list down to the desired depth after doing a topological sort. And I'm thinking it'd make really good sense to place keys while building the puzzles rather than afterward. Additionally, I think that approach might be needed to handle puzzles within rooms (e.g., unlocking a chest or restoring an ancient idol).


It's pretty rough so far, but I'm working on cleaning up things even more and getting to adding a HUD object that constantly shows the player's credits instead of having a gross statpanel.

There is definitely more that 5 human skins in the game, these were just here to test out code, etc.

Also coded in some of the core objective mechanics last night like finding the gas can to refuel the generator and radio for help. The objective items can currently spawn in one of three places around the map, and once everything is finished the helicopter comes in and takes the humans away safely.

Can't wait to show the game in action and get some alpha testers.

Update on my generator: My idea to simply create as many puzzles as possible appears to be sound in principle, and with that in mind I should be able to simply generate a crapton of puzzles and then eliminate excess until the target depth is achieved, IF the full set of puzzles even meets that depth. I decided to change the generator to this:

1) Get a list of all interesting bridges, defined as bridges that have no children (dead ends), multiple children (branches), or a network of more than one room behind them before reaching any child bridges. Bridges that have a single child bridge, and only one room before the next bridge, are considered boring.

1a) (for a more random feel) For all of the interesting bridges, look to see if they have boring ancestors. If they do, there's a chance to use one of the boring ancestors in place of the interesting bridge, since as far as puzzle complexity they're equivalent.

1b) (not implemented yet) Bridges that are not in the interesting pool should not be counted as bridges, and therefore the info about their neighboring areas should be merged.

2) Create a pool of bridges that might need ancestors; this starts out as a copy of the interesting list.

3) Choose a bridge P from the pool. If the pool is empty, we're done. (Skip to step 9.)

4) Get a list of all possible bridges that could be made into a puzzle requirement for P: That's the interesting list minus P itself, P's parent (because that's a bad choice), anything already listed as a direct requirement for P, and of course anything that itself requires P (directly or indirectly). If this list is empty, remove P from the pool and go back to step 3.

5) Choose Q from the list in step 4. (TODO: Weight the list by distance for a better geographical spread.) Q is marked as a puzzle requirement for P; propagate indirect requirements appropriately.

6) Place a key for P somewhere in one of the rooms behind Q, before any of Q's children. Placement is weighted to avoid clustering keys in the same room.

7) If the number of direct requirements for P is now equal to P's predetermined key count (same algorithm as before: 20% chance of 2-3 keys, otherwise 1), remove P from the pool. If Q has placed as many keys as it should reasonably fit, determined by the number of rooms to place them in, remove Q from the interesting bridge list so it can't be used as a requirement for another puzzle. (Current limit: keys behind Q can't exceed log2(Q.rooms+1)+1.)

8) Repeat step 3 until pool is empty.

9) TODO: Any bridges that were used as requirements ought to have keys of their own, so put those keys in the starting area, or really anywhere they might be allowed other than behind Q's parent. Currently this isn't implemented yet, so those bridges aren't counted as puzzles since they don't have keys.

This new algorithm seems to be producing puzzles of reasonable complexity. Interestingly, I'm finding that the depth is not always enough to meet my ideal target. With 20 rooms I've seen depths as low as 5 and as high as 11. When I implement step 9 the depth will actually be higher, but some puzzles still won't hit the target depth I think, and that's okay. I can probably alter the pre-puzzle generation, which removes some of the map's interconnectedness to encourage more bridges, to favor removing edges that will tend to result in dead ends. A map with N dead ends, not including the start location, should always be able to support N puzzles.
WIP along side other projects, polished it up a bit but it's what I'm working with so far.

[WIP Project Files]

I've also released Artwork for two previous projects.

You can find out information about it [HERE]
I have nothing to show yet, but I decided to go ahead and bring forth a sequel to my first released game on BYOND. Few may remember Text City Simulator (which itself was ported from the original QBASIC/BASIC version I made). The original game is now officially retired to make room for a new and improved sequel. It will have more capable features and will still retain the text-based nature.

Codebase should also be considerably better (as being one of the first games I ever worked on in DM, the original codebase was terrible). When it comes time, I will show Text City Simulator: The Next Generation in action. It will have features that I did not consider for the original game. ;)


The generator is improving considerably. I can now trim puzzles down to the target depth (but the full depth is shown here), and in general the puzzles tend to produce interesting patterns. I've tried to avoid patterns that create more locks and keys in a pointless way: for instance, a lock with a key in one of its ancestor "regions" (with the exception of the start area).

The next thing up is to come up with room-based puzzles to include in the mix. The only puzzles currently are on bridges between rooms, representing the need to unlock a door or otherwise somehow gain geographical access to the next area. A room-based puzzle would be something like a chest, or an NPC wishing for a trade, or maybe a broken machine that needs to be repaired.
Hey everyone!
Beware of the Weredudes official patch 4 is around the corner. I plan on posting some gifs of all the exciting new content soon and roll out tests for it this or next weekend.

The game is going to play like a brand new game by this new patch, it's a big one. Expect more information and the patch notes closer to patch day. Thanks to all of our testers and be sure to join the discord if you want to p get in on the action.

What I got to show you guys right now is a mix of what's to come and what's on the horizon. Patch 5 will be overhauling a lot of combat mechanics and adding some new Weredudes for players to choose from. Right now there's just a Werewolf, although there are 5 more planned to be unlockable by the steam release. (The Wereboar, Werefox, Weresquirrel, Wereraccoon and Werebear)

Patch 4 however, will now also include SKINS! Manio, you totally inspired me to create alternate skins for entire character roster. Thank youu! I even made a Rick parody variant for the Professor, ha. And once again, thank you to all of our testers, I wouldn't have been able to get so much work done this fast without all of you.



discord:https://discord.gg/vyXPFjY
twitter:https://twitter.com/RadCombatDudes
In response to Flame Guardian
Excellent!
Falcon lazorz wrote:


made this

Beautiful man.
here's my game http://www.byond.com/games/Ultimate2016/1

"In the future, life has become a living hell because of Donald Trump. High technology together with extreme poverty, in a society where class discrimination runs rampant and everyone is sent to prison just for being poor. iPhones have been made illegal to stop people from spreading the truth on social media. It is truly a living hell. Can you and your team escape and free the future?"
In response to Ultimate 2016
Ultimate 2016 wrote:
here's my game http://www.byond.com/games/Ultimate2016/1

"In the future, life has become a living hell because of Donald Trump. High technology together with extreme poverty, in a society where class discrimination runs rampant and everyone is sent to prison just for being poor. iPhones have been made illegal to stop people from spreading the truth on social media. It is truly a living hell. Can you and your team escape and free the future?"

wut
After some pointers from BYOND's art discord, I did up some more work on my new Weredude sketches. I think they're all really starting to come together now.

In response to Ultimate 2016
Ultimate 2016 wrote:
here's my game http://www.byond.com/games/Ultimate2016/1

"In the future, life has become a living hell because of Donald Trump. High technology together with extreme poverty, in a society where class discrimination runs rampant and everyone is sent to prison just for being poor. iPhones have been made illegal to stop people from spreading the truth on social media. It is truly a living hell. Can you and your team escape and free the future?"

Why you using homestuck sprite tho
In response to Plemith
Plemith wrote:
Ultimate 2016 wrote:
here's my game http://www.byond.com/games/Ultimate2016/1

"In the future, life has become a living hell because of Donald Trump. High technology together with extreme poverty, in a society where class discrimination runs rampant and everyone is sent to prison just for being poor. iPhones have been made illegal to stop people from spreading the truth on social media. It is truly a living hell. Can you and your team escape and free the future?"

Why you using homestuck sprite tho

The turfs are (I'm sure not originally) from DU also.
In response to Flame Guardian
I love the raccoon. I'll wait patiently for Wereraptor.
Thanks Manio, he seems to be a fan favorite! He's got a cool design too, I plan on making him climb walls like Grant from Castlevania 3 but with some added stealth abilities. Also, he'll be able to scavenge for food like regular players and not be forced to eat animals like most other Weredudes. And don't you worry, I got plans for Were reptiles ;)

I plan on releasing two more short gifs to showcase the two other two new playable characters tomorrow. For now, here is the Barrista! She can give her allies a boost of speed, setup firewalls to climb or block paths and can control large areas with her devastating coffee cups/what spills out of them! Stay tuned tomorrow to catch the Professor & Dog.

Our new map should be releasing on schedule sometime next weekend and I'll be playing the heck out of it to make sure the new characters/items are balanced and the new mode flows A-ok. Join the discord to get in on the action: https://discord.gg/vyXPFjY

Page: 1 2 3 ... 300 301 302 303 304 ... 349 350 351