New account registration is temporarily disabled.

BUILDING RPGMAKER EVENTS CHALLENGES!

Posts

Red_Nova
Sir Redd of Novus: He who made Prayer of the Faithless that one time, and that was pretty dang rad! :D
9192
NeverSilent: Wow, that's a lot of variable processing. What really stands out to me is the four variables for each actor. Couldn't you just use one variable and assign a random number between one and the party size (in this instance, four)? Then you'd just have to go through the checking of that one variable with each actor's ID.

Marrend: Your first implementation was actually closer (at least to my method). Using that script call, you already got which member of the battle party to draw a quote from. Work with that more.
NeverSilent
Got any Dexreth amulets?
6299
@Red_Nova:
Eh... I don't really know what you mean, to be honest. There are four variables total that are set to hold the actors' IDs, one for each actor in the party. You just have to run through similar processes multiple times so they save the correct numbers. Or am I completely misunderstanding you here? Could you maybe point out more precisely what variables exactly you are talking about?

Edit:
For reference, these seven variables are the only ones I used for this event:


Red_Nova
Sir Redd of Novus: He who made Prayer of the Faithless that one time, and that was pretty dang rad! :D
9192
At the very beginning, you have four variables for each battle member. What I'm suggesting is, since your example is with a four person party, just assign one variable a random number between one and four. Then take that result and go through the process of checking which actor is in that slot.

Right now, your solution goes through the process of assigning actor IDs to all four battle members. That's the same process being done four times. What I'm getting at is making the program only performing the actor ID check you've implemented once.

Does that help?
Marrend
Guardian of the Description Thread
21806
author=Red_Nova
Marrend: Your first implementation was actually closer (at least to my method). Using that script call, you already got which member of the battle party to draw a quote from. Work with that more.

It would get the ID of where they are in the party, but I would also need the ID of where they are in the database in order to split up who's talking, and getting personality in. Which kinda sounds like another script call to me?

Though, I did update my attempt at solving this with the other plan in mind. I may want to fiddle with the "are you gonna talk" processes a bit to see if this works the way I think it should, but, this seems like the easiest, least script-intensive method, to me.

*Edit: I'd like to note that none of my processes thus far assume a max party size of four.
NeverSilent
Got any Dexreth amulets?
6299
Ah, now I get what you mean, Nova. Yeah, that's actually a really good idea that I would never have thought of myself! It would basically just mean doing the randomisation process at the beginning instead of at the end and then "counting down" to the correct party member. That would make the whole process a lot smaller. Thanks!


By the way, in case I'm allowed to suggest a challenge myself, here's an idea:
Create a working minimap for your current map (without using scripts).
Marrend
Guardian of the Description Thread
21806
I'll have to read up what the heck NeverSilent did later, because right now, I can't read that block of code.
Red_Nova
Sir Redd of Novus: He who made Prayer of the Faithless that one time, and that was pretty dang rad! :D
9192
author=NeverSilent
By the way, in case I'm allowed to suggest a challenge myself, here's an idea:
Create a working minimap for your current map (without using scripts).

I think the rule is the first challenge has to be completed before the next challenge is issued. Let me go ahead and post my solution.

After seeing Marrend's implementation using a script call, I edited mine and dropped almost half the freakin code. This is now a much more efficient (compared to my other one) method of getting a random quote AND have multiple quotes unique to each actor:



The rest of the code is just copy/pasted conditional branches, so I didn't include those.

*reads challenge*
Wait, what? You can actually do that without using scripts? I... uh... what?!
Marrend
Guardian of the Description Thread
21806
Rasuna has learned that party member ID is a value Rasuna can use with Change Variables!

Though, now I'm wondering if you originally used Change Variable to generate a random number between 1 and 3 for the party member who was spouting a line.
SunflowerGames
The most beautiful user on RMN!
13323

Take screen shot, shrink it, put it in pictures.
Create mini map = show picture.
CashmereCat
Self-proclaimed Puzzle Snob
11638
I don't have a maker but I'm going to explain the pseudocode for an extremely weird implementation for NeverSilent's challenge to make a minimap. Because I too do not have access to VXA ATM.

1. Assume resolution is 544x416 pixels (17x13 tiles), and that the minimap will display the map area of 1088x832 pixels (34x26 tiles), represented in the top right corner by a minimap of size 68x52 pixels, where each tile of the map is represented by a 2x2 pixel area.
2. Create 2x2 tiles to represent popular features, either as simple as passable/impassable, or creating pictures for tree graphics, water, etc. It depends how deep you want to get.
3. Get passability data for each tile of the map in the area of 34x26 tiles around the player. You may have to use a simple script call to get the passability or tile type of each tile.
4. Use a formula of coordinates to paste pictures in the range of 1-
...
Actually, screw that, my implementation is not going to work because there aren't enough picture slots. I'd need 884 pictures to execute my implementation. It'll probably lag to kingdom come too. F.M.L.

Oh well, I might think about this a little while but to create anything other than a simple screenshot picture like Kory said might require some thought from myself... I didn't think it was possible... Maybe xp has superpowers.
1. Make a picture of every map you need a minimap for
2. Every time you enter a map, run an automatic event that displays the picture where you need it
3. Run a parallel process that tracks your X and Y position and updates a point (needs a picture itself) that runs along the map.

Alternately, you can make the map represent a larger segment of the world and update the pointer to focus on the area you're in.

Not that hard to do - even Don Miguel's test game has that!
CashmereCat
Self-proclaimed Puzzle Snob
11638
Yeah I overcomplicated things. I was trying to generate a minimap based on the tiles around you. Obviously that kind of thing would be better with scripts.
Marrend
Guardian of the Description Thread
21806
Unless I'm horribly mistaken...

author=Red_Nova
author=NeverSilent
By the way, in case I'm allowed to suggest a challenge myself, here's an idea:
Create a working minimap for your current map (without using scripts).
I think the rule is the first challenge has to be completed before the next challenge is issued. Let me go ahead and post my solution.


...this suggests to me that it's still Red_Nova's turn?
Red_Nova
Sir Redd of Novus: He who made Prayer of the Faithless that one time, and that was pretty dang rad! :D
9192
Nah. My challenge ended when I posted my solution. And since there's no one right way to do it, every other interpretation is just as valid.

As for the minimap challenge, I guess I overthought exactly what kind of functionality it would have. When I think minimap, I think of a small map that displays a party location as well as NPCs, enemies, locations, etc. I guess you don't really have to have that stuff to have a minimap.
*edit* oops, we've moved on to minimaps. that's what I get for leaving the window open all night without refreshing >_> below is a solution to the random quote challenge.

hm. the fact that these are so tricky to do in events seems to me like a good indication that they should be done, at least in part, via script.

since point 2 says "you're ENCOURAGED to reach the solution without relying too much on scripts", not required... :P (feel free to declare my solution invalid/disqualified for relying on scripting; I was happy just to tackle a random problem)

EVENT
@> Script: $game_variables[1] = CombatQuotes.get
@> Text: -, -, Normal, Bottom
: : \V[1]

SCRIPT
module CombatQuotes
  def self.get
    quotes = {}
    
    quotes["Eric"] = [
      "You're going down!",
      "First blood is less important than last blood!",
      "Aw yeah!"
    ]
    
    quotes["Natalie"] = [
      "BOOM!",
      "Say hello to my little friend!",
      "In it to win it!"
    ]
    
    quotes["Someone Else"] = [
      "I'm expressing my strength through words!",
      "So determined!",
      "Are you tired of seeing the same three quotes yet?"
    ]
    
    # .sample takes a random item from the array; we use it twice here
    return quotes[$game_party.members.sample.name].sample
  end
end

you'll notice these are dependent on name. it could be made dependent on ID instead with a couple changes, but it gets a touch more involved; will post that if anyone's interested.
So, my turn to post a challenge?

I guess I make something less difficult - the task is a switch puzzle where the different levers affect specific doors - if they're open, they close, if they're closed, they open.
Marrend
Guardian of the Description Thread
21806
I suppose a way to do this is to use a game-switch that turns on/off with the pull of a lever, and set up the doors so that they are open/closed according to whither or not a certain switch is active or no.

Of course, if the situation is that switches affect other switches/doors, things become more interesting, but, that's not necessarily the task at hand.
Yes, I count that as a correct answer. You really only use Switches.
I would've thought to use variables, where each switch adds a certain number, and the sum of the number would determine which doors were open and closed, making it a mathematical puzzle.

Marrend, your challenge?
Marrend
Guardian of the Description Thread
21806
I was bouncing between of two challenges, but, I'm pretty sure at least one of them needed lines of script to work, even if it is one line. So, with that in mind...

Make a by-step encounter system that doesn't have players engage in encounters after only one step!

Note: I can do it with three variables and a switch.