It's TIME! – Project 1B
#1
Background Video + Filters

This is the big moment, you've all been waiting for! I promise you, this has never been done before in Pr2 history! In this video, you'll find really cool background ideas, filters, and more.

Believe me, you don't want to skip over any of this, or the reading because you won't understand what's going on.



Now that we've gotten that out of the way, let's talk about some more really cool ideas. You see, I've been thinking about not only proposing new background changes in Pr2, but ways you can obtain them.

You and I both know that with every flash game, pc game, gaming console, etc, has some sort of difficulty attached to them. Well, I thought it'd be a great idea to have you race against AI Bots, to unlock really cool backgrounds for your main lobby.

With this idea, when you click on the options tab in the main menu and select the "change background" option, this is what you can expect to see:


All the backgrounds are locked (including the filter option) because you need to beat a few AI Bots on a certain difficulty level, to unlock these options.

My next idea is giving you the option to load your own custom background, instead of the recommended backgrounds that you see before you. Same rules apply as above, except it would pull up a window allowing you to select a background from your computer files.

Then, there's the filter idea that allows you to apply a color filter to either your custom backgrounds or the unlocked backgrounds. However, you still need to beat a few AI Bots (as described above) to unlock any of these options.

Note: Click on the question mark in the top right-hand corner to view the filter options (if they're unlocked).


Just to clarify: regardless of whether you're selecting your desired background or loading it, you would select your background first, before you pick change the background filter; picking a background automatically switches backgrounds.

Then, once you've selected your background, you can head over to the filter section and start playing around with the background colors.

Here are the options that you would see, to make the magic happen.


Notice how there's an option to add music to the game as well. I know this idea has been pitched before, but I just thought it'd be a great idea to bring it up again in this thread. Really, you should be able to add your own music to the game, just like the background ideas.

AI BOTS

This is what you can expect to see, when you want to know how to challenge AI BOTS:

[Image: 5oEnBvu.jpg]

Now, obviously there's a lot more info that goes into this working mechanic, which will be explained in Project 1C because it's still a working progress. But for now, this is a rough draft explanation of what you can expect in the next project.

AI Personalties

Aggressive, Assassin, Clever, Competitive, Coward, Hasty, Treacherous, and Unpredictable.


AI Difficulty


If you like all these ideas, help spread the word and make them a reality because I promise you you won't see anything else even remotely close to these ideas, pitched on JV.

Important Note: Any objections you may have, I respect that and will be taken into consideration. But before you state your objections, ask yourself this question: Will I ever see any of these cool features in this game? With all of your support, all this can become a reality; think about it.
The Following 5 Users Say Thank You to Different For This Useful Post:
  • Delphinoid, ExplosionZ, Lego-man945, Master Raiden, oxy
Reply
#2
The bots could be cool.
As for backgrounds, I believe that players are able to tinker with the files for the game and change this for special clients (correct me if I'm wrong lol).
[Image: LLwQFov.png]
The Following 1 User Says Thank You to Lego-man945 For This Useful Post:
  • Different
Reply
#3
(31st March 2022, 12:05 PM)Lego-man945 Wrote: The bots could be cool.
As for backgrounds, I believe that players are able to tinker with the files for the game and change this for special clients (correct me if I'm wrong lol).

It's possible that people could tinker with the files, so you're right about that. Which is why it would have to be programmed in a way where it's difficult to do that.
The Following 1 User Says Thank You to Different For This Useful Post:
  • oxy
Reply
#4
The bots seem cool, but the problem is that making them would be very difficult. You would have to tell a computer to figure out how to get to the finish block, and it would have to take into account glitches, teleports, items, vanish blocks, crumble blocks, etc., all while making sure that these bots don't slow down the game on weaker machines (assuming that these bots aren't running server-side)
It would be a lot of work to get them even just able to generally beat levels, and a lot more work to get the implementation to the point where the bots could find glitches and target players.
i failed the mario twitter challenge
The Following 1 User Says Thank You to ThePizzaEater1000 For This Useful Post:
  • Different
Reply
#5
(31st March 2022, 3:56 PM)ThePizzaEater1000 Wrote: The bots seem cool, but the problem is that making them would be very difficult. You would have to tell a computer to figure out how to get to the finish block, and it would have to take into account glitches, teleports, items, vanish blocks, crumble blocks, etc., all while making sure that these bots don't slow down the game on weaker machines (assuming that these bots aren't running server-side)
It would be a lot of work to get them even just able to generally beat levels, and a lot more work to get the implementation to the point where the bots could find glitches and target players.

Agreed. That's why I think more than one person should work on this kind of project because it's a big job and it's super, time intensive. I wish I knew something about coding bots into games, but unfortunately I'm not skilled in this area.
The Following 1 User Says Thank You to Different For This Useful Post:
  • oxy
Reply
#6
(31st March 2022, 10:21 PM)Delphinoid Wrote: I think the easiest way of doing this would be to create a set of hint blocks that are only visible in the level editor, which would guide the bot and occasionally give it detailed instructions on how to get through tricky sections. Even this might not be super easy, depending on how sophisticated you want your AI to be, but it would at least be doable.

I'd be open to seeing something like that, implemented into the game. As long as the AI would understand different personalities and "getting through tricky sections" like you mentioned, then I'd be ok with that. The only time I draw the line is when the AI starts to behave like a beginner because I want them to play really competitively.
The Following 2 Users Say Thank You to Different For This Useful Post:
  • Delphinoid, oxy
Reply
#7
(1st April 2022, 2:30 AM)Delphinoid Wrote: A good place for you to start would probably be looking into path-finding algorithms. The difficult part would be transforming the path into something useful for a platformer. You'd need to take into account how high the bot can jump / super-jump, where ground it can stand on is, etc. The A* algorithm might work, although it is adaptive rather than giving an optimal solution: https://en.wikipedia.org/wiki/A*_search_algorithm.

Tbh, I was actually hoping someone else (who's already seasoned with coding and programming) would take on this project, as it would take me a long time to finish this.

(1st April 2022, 2:30 AM)Delphinoid Wrote: As for the personalities, you haven't really defined any. The list of words is nice, but they don't actually describe any specific behaviours (asides from being able to abuse glitches, more on that later). How people prefer to respond to the decisions they're met with is generally how the kinds of personalities you're talking about emerge. In an average PR2 race, though, players aren't really posed with many (or any) decisions: the skill is almost entirely in raw execution and nothing else. As a result, it's difficult to be expressive with your playstyle, let alone to decompose any of the subtle playstyles that might exist into "flowcharts" so that a computer can emulate them.

So, what's the difference between an AI's behavior on a gaming console vs. a flash game? The reason I asked that is because I pulled the personalty ideas from a game that's played on a gaming console, hoping they would coexist and have similar standards like a flash game would.

(1st April 2022, 2:30 AM)Delphinoid Wrote: If you wanted to have different difficulties, I think the best way would be to just change their stats, and maybe you could have hints specific to each difficulty (like a hint to perform a glitch or something). Doing certain glitches, like falling through corners, would probably be really annoying to implement and not really worth it though. Maybe if you wanted to use an A* search between checkpoint hints, you could also configure its radius based on the difficulty.

You should have a think about how you would go about programming something like this, and try it out for yourself.

Changing their stats is definitely in angle I would want to see, happen. On the other hand, I intentionally want them to fall through corners because if done successfully (giving them an advantage over people who don't know the glitch yet), would leave other players, frustrated. They would also be good for frustration levels, traps, etc.

If I were a programmer (which I'm not), I would give them elaborate hints that would guide them through difficult glitches, using certain stats. The goal is to have them play, unfairly to complicate things for people in higher difficulties.
The Following 1 User Says Thank You to Different For This Useful Post:
  • Delphinoid
Reply
#8
(1st April 2022, 12:38 PM)Delphinoid Wrote: Writing an AI like this would take anyone a long time. It's your idea and your passion though, so if you're really serious about it you owe it to yourself to be the one to do it. I don't know if anyone would want to do something like this for you anyway, unfortunately; writing an AI for PR2 would be a lot of work, and the people who could do it have better things to do with their time and their own projects they care about.

That being said, anyone is capable of programming. Learning a programming language is not as difficult as you might expect. I think it would be a great learning experience for you to give it a go.

I guess I could give "programming language" a try, but then I'd have to find time to do that, seeing as I'm in University with 6 months, left. Yeah, I'd rather pay someone to program AI into pr2. Seems more convenient, anyways.

(1st April 2022, 12:38 PM)Delphinoid Wrote: As I mentioned before, people tend to express themselves in games primarily through their decision making. In games where players need to make a lot of decisions, you can emulate personalities by prioritizing certain kinds of decisions. For instance, an "aggressive" mahjong AI might prefer to open their hand when given the opportunity and be more risky with discards, while conversely a "defensive" AI might just prioritize not losing. Something like that would be relatively straightforward to implement. In PR2, there are generally no decisions to make, so there's no clear basis for personalities there. I'm not sure what game you're talking about so that's all I can really say.

I was referring to WWE 2k. They have the AI Bots set up where you can tweak their personality stats to your likings and switch between difficulties. I guess that personality thing may be one-dimensional in platform racing 2. I might need a work around with that, but I'm sure something could be accomplished, there.

(1st April 2022, 12:38 PM)Delphinoid Wrote: Also, there aren't really standards when it comes to AI. Generally, if you want to make an AI for a game, it needs to be written from scratch specifically for that game. There's no magic piece of code that you plug into any game and have it just automatically work.

Here's an exercise for you: put yourself in the shoes of an AI. Try to think of a flowchart you can follow to beat ANY level in PR2. The instructions in this flowchart should be limited to inputs (up, down, left, right, spacebar), and the conditionals joining them should be things that can be easily calculated (i.e. is the finish block to my right, is there a block I can stand on at this offset from my current position, etc.). You'll probably start running into problems very quickly, even if you restrict it to simple levels (if the finish block is above the AI, how does it find a way up?).

Clearly a little bit of trickery and sophistication is required. Since you're unfamiliar with this kind of thing, it'd definitely pay to do a bit of research.

Here's the thing: my specialty is bringing creative ideas to the table for people to view and make decisions based on whether it'd be a good idea or not. I would much rather pay someone like you or @bls1999 who knows what they're doing, to take on this project. I can honestly tell you that it would take me a year to complete this because I'm in university.

However, just incase I do decide to take on the project, sum up everything and break it down into affordable steps that I need to take, to take on this project. As in things I need to download, source codes, etc.
The Following 1 User Says Thank You to Different For This Useful Post:
  • Delphinoid
Reply
#9
AI would probably be the biggest and coolest thing to happen to PR2 in ages, so I would absolutely love to see something like this in the game. But it does sound like a far-fetched idea.

(1st April 2022, 2:04 PM)Different Wrote: However, just incase I do decide to take on the project, sum up everything and break it down into affordable steps that I need to take, to take on this project. As in things I need to download, source codes, etc.

Unfortunately, it's not that simple. Figuring out what to do is half the battle. The other half is actually doing it. Unless we have someone in this community with specialized knowledge in AI or machine learning, someone will need to spend the time to figure out exactly how to do it first.

A simpler solution would be to implement the AI only for the Campaign levels. Then you can add hard-coded spots for them to jump, super jump, move, use an item etc. And that would be much easier. It also means you can implement your own knowledge of the level to make a more convincing AI instead of trying to program something that can learn by itself.

Given that PR2 is an open 2D world with heaps of variables, I would expect this to be harder than teaching a computer to play chess.

Anyway, here's a video of a computer learning to beat a Mario level.
[Image: q2GRKUL.png]
The Following 3 Users Say Thank You to Master Raiden For This Useful Post:
  • Delphinoid, Different, Magniloquent
Reply
#10
Personally, I don't think the bots would be that hard to figure out. I've seen the suggestions for racing "ghosts" in the past. This would essentially just be a reskin that can be turned up. Essentially, the difficulties could just be the ghosts of players going at different speeds. E.g. easy would use a recording of a slower player whereas legend would use the recording of a speedrunner.
[Image: LLwQFov.png]
The Following 1 User Says Thank You to Lego-man945 For This Useful Post:
  • Delphinoid
Reply
#11
(1st April 2022, 10:20 PM)Lego-man945 Wrote: I've seen the suggestions for racing "ghosts" in the past.

I've wanted ghosts in PR2 for a while. That could be an extension of the PR2 Replay System where you race against the ghost of someone's replay.

But it's not the same as bots. Being a recording means it should not be affected by changes in the level (e.g. Moving push blocks) or the use of items (e.g. using lightning).
[Image: q2GRKUL.png]
The Following 3 Users Say Thank You to Master Raiden For This Useful Post:
  • Delphinoid, Different, Magniloquent
Reply
#12
Surprised this hasn't been mentioned yet, but we already have Egg Minions which can walk around and attack players. Just add a player avatar version of that and expand on it? Could be a start anyway.
[Image: sigimage.php?u=515167&bg=1&c1=FFFFFF&c2=...&c5=ff3333]
The Following 2 Users Say Thank You to FDX3 For This Useful Post:
  • Different, ExplosionZ
Reply
#13
(1st April 2022, 11:06 PM)Delphinoid Wrote: Unfortunately, everyone can come up with ideas like this, your specialty is dime-a-dozen. It's important to not only be able to come up with creative ideas, but to be able to actually realize them. There's no honour in being able to imagine a beautiful painting without being able to paint it! Besides, knowing a bit about how to realize your ideas also helps develop better and more sophisticated ideas, imo.

Also, bls isn't really a programmer and wouldn't be able to do something like this rofl, which is probably already enough to end a project like this given that afaik he seems to be the only one allowed to directly make changes to the game, rip.

Actually, I was refer to the background ideas in Pr2. I'm sure anyone can come up with the AI Bot ideas. But no one's really bothered to take the time out to actually go into photoshop and blend Pr2 objects with other backgrounds because they don't care.

Yeah I initially thought @bls1999 was a programmer as well as a coder, so I had my hopes up lol.

(1st April 2022, 11:06 PM)Delphinoid Wrote: First, you'll need to learn the basics of a programming language (C, for instance; in fact, with this you could build from the game engine @Northadox is writing, which would give you an easy way of visualizing your AI). The rest is just research. Programming is essentially problem-solving, and solving problems without standard solutions means doing a lot of research. I would start by looking at AI for other, similar games and studying how they work and how you could potentially adapt them to PR2. When I've been talking about AI for PR2, I've been taking inspiration from things like the Source engine (e.g. with the hint system) and various Mario AIs.

Sounds good! I'll look into learning the programming language, specifically C, and I'll share my thoughts on how that goes. If I run into trouble with anything, I'll reach out to you.
The Following 1 User Says Thank You to Different For This Useful Post:
  • Delphinoid
Reply
#14
(2nd April 2022, 2:19 AM)FDX3 Wrote: Surprised this hasn't been mentioned yet, but we already have Egg Minions which can walk around and attack players. Just add a player avatar version of that and expand on it? Could be a start anyway.
Egg minion behavior doesn't have anything that's nearly as difficult to make as a proper AI bot, and wouldn't make that good of a base to work off of. 
You'd have to basically completely rewrite both the walking (to actually make it go through the level, rather than just wandering around), and the attacking (to be able to target players, which may require a bit of extra movement to get a good hit depending on the item).
i failed the mario twitter challenge
The Following 1 User Says Thank You to ThePizzaEater1000 For This Useful Post:
  • Delphinoid
Reply
#15
Bump! Imagine if this project got implemented into Pr2 🤔
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)