Coder Social home page Coder Social logo

meandering-muck-2.0's Introduction

More to come

meandering-muck-2.0's People

Contributors

shadowedvaca avatar

Watchers

 avatar

meandering-muck-2.0's Issues

Break generate maze section into multiple functions?

One thought, break it out by maze element (walls, doors, start/end)

Last time this came back to shared pieces of info, but I have a better idea how to manage variables now, so it might be cleaner...

This is not a must have, but I'd like to have this worked out before I call MVP done.

Player Can Leave Maze

# The boundary doesn't work
	# It doesn't work on the second level for sure
		# Not sure if it works in the first level
	# Need a plan for stopping the player
		# Can the world boundary be made to work?
		# Can the player position clamping be made to work?
			# A lot of bugs stopped when I pulled this out, I'd rather keep it out

Options Menu

# Make options screen able to configure screen mode and size
	# Maybe allow user to enter a seed for the rng and select wall and door modes?

Normal Door Enhancement

Just like on start/end doors, need 3 options

Random - This is how the doors work today (compass and placement is random)
Middle-ish - This one would be Middle w/ a random placement rather than a forced one (compass is determined, placement is random)
Middle - This is that sticky note I have. This would determine where each of it's children's doors go (both compass directions and placement at one end or the other.

New Level Player Issues

# I think I need to figure out turning off player input and colission between levels
	# If you keep pressing after hiting the exit, you can accidently leave the map...
	# Also, you can sometimes slide out of the start into walls
	# Also, you can trigger the exit multiple times

Improve inner game communication

# Learn to use signals to push info around better
	# see notes on Maze for what I was working on
	# https://kidscancode.org/godot_recipes/4.x/basics/node_communication/#signal-example

setters / getters in maze data

Reading about setters and getters online, there was an example around have a variable that calculated upon retrival. It sounds like I could refactor bits of the maze data code and use this. For example, corridors and open are not their own variables holding onto data, they are calculations of the outer wall only. This issue is to play around with this to see if it reduces code in the maze data structure (and reduce processing maybe cause I am no longer storing un-needed values... I think this would apply to all the calcs down from this. If I overdo this however, it might mean calculating one value means calculating several values and using this one value many times would not be process efficient.

https://www.reddit.com/r/godot/comments/164z4at/setters_and_getters/

Need a level counter

Show a level counter on the screen to communicate to the user what level they are on.

Start / End Door Spawn Options

Need to be Random, Middle-ish, and Middle like the wall types

Need a list of the options, and the one picked will apply to all things (walls, doors, start/end)

Random = The start/end can spawn anywhere on the wall that was skipped during door choice (like today, only not random)
Middle-ish = The start/end can spawn -/+50% (respectively) from the wall they surround
Middle = Today's logic, right on the wall they surround

Maze Generation Time

I think when mazes get more than 200x200 in size, they might take too long to generate. Do some testing to figure out if this is actually a problem.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.