The thread formerly known as "Weekend Coding"

Please explain how any of that let’s me watch someone play my game.

1 Like

When people pay to have people come in and play, they watch them and record the play sessions on the test machines.

Game dev communities meet up and play games in the same space. Like everyone comes with a laptop. You might also be able to convince people to record their home play sessions and send you a recording.

When you are at the point of alpha or beta test where people are downloading your game, you have lots of tracking and analytics in your game to learn what players are doing without have to actually watch them play. There are also in-game feedback forms for players to tell you what they think.

People will also stream your game maybe.

Basically, you need money and or community.

1 Like

There’s a new game in town with regards to Python packaging, as if there weren’t enough solutions already.

https://python-poetry.org/

It’s not perfect, but I tried it out, and I’m sold. It’s got a few bugs in it because it’s so new, but I was able to fix them. I also saw bug reports on GitHub for all of them, so they are known.

Other than that, it just solves so many problems I’ve actually had. I see how it works, and all of their design decisions match up with how I was already doing things.

My favorite feature is how you poetry add package and it automatically adds that package to the pyproject.toml file. No more having to manually manage a requirements.txt file. You just install the packages you need, and you’re good to go. I think over time this is going to be the winner. Throw all the pipenv and friends in the trash.

2 Likes

pipenv was supposed to be that. PyPA taking it over was supposed to help, but I’m still not hopeful for it going forward.

My boss’ boss’ boss just told me in a yearly one on one that I should learn python so I guess I’m going to learn python now.

1 Like

Python 2 is dead. Proceed directly to Python 3.

If you already know how to program, https://adventofcode.com is a nice series of exercises—several years’ worth, in fact—varying difficulties. We’ve got a thread for it.

1 Like

And we’ve got an open source Dwarf Fortress-like written in Python that people can help contrib- oh.

1 Like

Game dev update!

I had my first play test session with a friend. He ran the game and I watched what he was up to via the Discord screen sharing function. It worked super well, from a tech point of view.

Overall I’m super pleased with how the session went.

Main observation:

I’ve completed the tutorial and the first level. However, as the person who built it and played it so far, I’m pretty much testing all the mechanics as the highest level expert ever. Also, I know all the solutions to the puzzles, this being a 3D first person puzzle platformer. So really, I’m play testing as a speedrunner would play.

So I can complete level 1 in about 3 minutes, normally. I guessed that it would take someone playing for the first time maybe 20 minutes, as that was what my girlfriend managed. However, she has been watching me play for the last 5 months, so also knows what is possible and how to progress.

I’ve always been aiming for a game that would take about 6-8 hours to complete. And if level 1 takes 20 minutes, I felt like there was a lot of level creation to go.

However my friend took about an hour to complete level 1. Some of this was due to my own level design mistakes, and probably 15 minutes of that could be cut.

Still, now I know that I’ve created about 10% of the game instead of 2% of the game, I feel a lot better about how long it might take to get the main complete storyline/mission under control.

Now I’ve got about three pages of notes to work though, lots of small fixes and design thingies to sort out.

I already have my next tester lined up.

If anyone else is interested in letting me watch them play through the tutorial and first level, get in touch and we can set up a Discord session.

1 Like

What are you making it in? And totally solo?

Its a 3D first person puzzle platformer game.

So far it’s a solo project. Once it is properly playable, with most of the gameplay and story complete, I’ll find a publisher to help fund some proper modeling and graphic design, and to help get it into stores.

What technology are you using to create it?

1 Like

Unity. …

2 Likes

I forgot to update here.

I had a second play test, this time with my upstairs neighbour. He just happens to be a super expert gamer. Like, as a 14 year old had sponsorship playing Counter-Strike and stuff. Like, I tried his mouse, and immediately had to turn down the sensitivity because the difference between what he is used to and what I can deal with is a bigger gap than my girlfriend and me.

So while the previous play tester took about an hour to complete the tutorial and first level/training rooms, the upstairs neighbour just blasted through it. There’s an option to repeat a room before moving on to the next, to see if you can beat your time. He got through training room 1 in about 4 minutes on the first attempt, and then 45 seconds on the second attempt.

What I thought were advanced speed running strategies, he was attempting on his second or third attempt. Also he didn’t look at a single word in the game, he just tried things out based on previous fps knowledge, and most of them worked.

While the first play test brought about loads and loads of quality of life improvements, and made the game less frustrating for a new player, I’d fixed them for the second test.

The 100% helpful feedback from the upstairs neighbour was about the controls. Turns out I’d made the controls waaaay to complex. It was fine for me, as I had learned them all as I added them to the game. For my girlfriend and first play tester, they struggled with the controls, but I thought they would get used to them over time. It’s a complex game, so you should just get used to the complex button presses.

Turns out: no. With some ideas from the upstairs neighbour, and a lot of testing things out myself, the controls are now waaaaaaaaaay better. In fact the controls are so much better that it’s just easier to move around, and the actual platforming and puzzles are easier. Which is good! It means I can make the movement way more super precise.

It’s amazing that I think I have good idea of what the game is, and how it will play, but there have been three or four major turns now. All in a good way.

And today I had another breakthrough, which I’m super excited about, but will take another week or so of work to get ready. And I’m currently ill, so can’t concentrate properly.

2 Likes

Working on the new FRC web site. I decided to try using Poetry for Python package management. It replaces pretty much all the other things. No more pip, no more easy_install, no more pyenv, no more virtualenv, poetry takes care of everything.

https://python-poetry.org/

So far, I think I like it. Really, it has two features I’m a big fan of.

One is that it lets you specify optional dependencies as well as development only dependencies. This means I can poetry add --dev package and it won’t get installed on production environments. I previously had to handle this by having several different requirements.txt files, which was not an ideal solution.

The other is the lock file that you commit to the repo.

Imagine your project has a dependency named cool-library. You need version 2.0. So you put that in

cool-library==2.0

Now cool-library depends on other-library >= 1.0

So when you install the dependencies, you get cool library 2 and other library 1.

But then another developer comes along to join the project. In the meantime, a newer version of other-library got released. So they end up with cool-library 2 and other-library 2. This causes lots of problems!

The lock file in poetry allows us to lock in the exact versions of every package we have installed, all the way down to the bottom turtle. However, our actual dependency specification file only lists the packages that our project directly depends upon. Upgrading to newer versions of dependencies is now an explicit action that is committed in source control, and can be done in very few commands.

I actually tried out poetry yesterday. It was not what I’d hoped.

  • Install via curl pipe python: not off to a great start
  • Both README and project homepage don’t actually show how to use it
  • I don’t want to create a new project with poetry structure, I want to add poetry to my Django project. Should be a common use case you would think? Try telling the docs that.
  • Why did they make it poetry add <package> and not poetry install <package> like easy_install, and pip, and pipenv, and npm, and cargo, and gem, and…

I still like pipenv more, but I’m worried about the state of that project. I’ll give poetry some time before I give it another shot. I ended up back at pip freeze > requirements.txt.

This is how pip installs. It’s not any different.

I didn’t have a problem finding the documentation and it wasn’t too bad.

1000% AGREE. I still have no idea how to add poetry to an existing project.

Agree, but it is an extremely minor issue. I’m not going to get into a huff about what word I have to type. It could be poetry poop for all I care.

I eventually found on a different site (SO?) you need poetry init.

https://pip.pypa.io/en/stable/installing/

Good info.

When the Game Plays the Player (2012)

1 Like