-
Content Count
184 -
Joined
-
Last visited
-
Days Won
5
Content Type
Profiles
Forums
Calendar
Blogs
Gallery
Everything posted by Zen Blood
-
Hello! I've been hacking away at what I originally thought would be a fairly simple scene to create. I'm making a special little update for my game where players can view concept art. They open up a scene that has a command bar that allows them to scroll through the art using "previous" and "next", with the command "commentary" in the middle that opens up a window to show a brief description of the image. Almost everything is working pretty swimmingly (after much struggle ) except for two issues: 1: when I move to a new picture and re-open the commentary window, the new text will overlap with the old text instead of replacing it, 2: the third line of text doesn't appear for whatever reason. (Solved, it was a typo that prevented the third line from drawing ) This is the whole script used to create the window for the artwork commentary: This is the script that is used to change the artwork image and the artwork description accordingly (used in the scene): I was hoping to completely dispose of and recreate the window using @description_window.dispose, but after much ado, I could only get it to throw up this error: To me, this looks like the .dispose command has a definition and could work, but the script doesn't think there's a window to dispose of? After I couldn't get that to work, I resolved to attempt to replace the drawn text and keep the window in existence as long as the scene is up. As for the missing third line, I'm really unsure of what's happening because all four lines are drawn exactly the same but at different coordinate of the Y Axis. I'll continue poking around for any misspellings that may be interfering with the third line appearing, because that's the only thing I can think is the problem at the moment. Yes, it was that! I've been trying to figure this out for a day, but the minute I post for help, my brain decides to un-derp itself. I'm using Victor's S Font, by the way. Thank you for any and all help!
- 4 replies
-
- window contents
- custom windows
-
(and 4 more)
Tagged with:
-
Drawing Text Overlapping and Refreshing Windows
Zen Blood replied to Zen Blood's topic in Programming
Ah! Thank you @Kayzee, I understand that better now. I'm going to look into learning more about that.- 4 replies
-
- window contents
- custom windows
-
(and 4 more)
Tagged with:
-
Drawing Text Overlapping and Refreshing Windows
Zen Blood replied to Zen Blood's topic in Programming
You are exactly right! Thank you so much. Before I posted here, I tried using .clear and got an error. Since I could use .dispose/.hide/ect;, I thought .clear simply didn't exist. I did sweep through Window_Base and didn't find it either, but I did see the word "contents" being used. Does the method clear come from class Window instead of Window_Base?- 4 replies
-
- window contents
- custom windows
-
(and 4 more)
Tagged with:
-
I'm so incredibly happy. After over five years in development, I finally launched my game the other day on the 27th.
Getting to this point has been the biggest struggle of my life, but I finally got here. Reviews have been good so far, and I hope the success continues! Thank you for everyone's support here, I learned a lot through this process. I even completed the Ruby course for SoloLearn and got a little certificate.
-
Watch the Trailer! Website ❧ YouTube ❧ Twitter ❧ DA-Group Abstract: Macabre, Profound, Stylized Genre: (Pixel) Horror Adventure Artistic Style: Pixel Art Specs: Windows 7+, 110MB free disk space Rating: 13+ (Violent References, Cartoon Blood and Gore) Game Progression: Done and published! Recruitment: N/A DOWNLOAD FROM STEAM | DOWNLOAD FROM ITCH.IO | DOWNLOAD FROM GAMEJOLT WATCH MANLYBADASSHERO'S DEMO PLAY | WATCH ALPHA BETA GAMER'S DEMO PLAY | WATCH IONPRIME'S DEMO PLAY One dreary day, a girl and her family hit the road to visit her uncle in his new house. Having been mislead to a house far away from town, the family begins to search for any signs of a homeowner. They knock on the door. Nothing. They enter the house. The air tingles- Something changes. They're not where they just were, they're now outside of a worn, cobblestone mansion. Unbeknownst to the child, she and her family have stumbled into a parallel dimension where human flesh is a commodity and all the citizens are a little... Off. Character profiles are intentionally vague. More profiles will be added. (concept and design, artwork and animation, music and sound effects, programming) Zen (script resources) Shaz, Melosx, Traverse, Khas, Galv, Yanfly, TheoAllen, DiamondandPlatinum3, Eshra, Kayzee, VIPArcher, Victor (beta testing) AlphaBirb, CmderVimes, Eodus, Eric W. Tucker, Eusong, Kiff Jalbuena, Koimonster's Khaos, Moldy Spongecake, Neiot, Phoogho, Robert ''bertthehost'' Blake, Sky Take a look at this short video that shows off a small snippet of the game in action! ❧ Various locations to explore ❧ Puzzles ❧ Chase sequences where the player can hide, trip over objects, and misdirect their stalker ❧ Intricate lore about the characters and the world of Fleshport ❧ 100% original artwork ❧ 100% original audio ❧ 100% original music ❧ Multiple endings ❧ Easter eggs and references ❧ Play the game again with extras, such as new outfits and cheeky dialogue ❧ Shaz, Melosx, Traverse, Khas, Galv, Yanfly, TheoAllen, DiamondandPlatinum3, Eshra, Kayzee, VIPArcher, and Victor, for providing the community with wonderful scripts. ❧ Eodus, Kiff Jalbuena, Phoogho, and Sky, for volunteering their time to beta test. ❧ All the helpful and supportive users in the RPGMaker forums. ❧ My fans, who have supported me from the start of this project. ❧ My family and friends, who are supporting me through this long, intimidating project. ❧ The people who created the games I love. Thank you for reading!
-
Fleshport has been finished and launched on the 27th!
-
Hello, everyone. Today I've been working on a "New Game Plus" feature, where if you have completed the game once, a switch will be set to true that allows you to select and play a new game that has extra features in it. I am very close to having this set up exactly the way I need it to be. Using this little set up here, I created a switch ($extragame) that can be set to true while in-game. I will set it to true after the player has completed the whole game. At the title screen, when they select "New Game" it will take them to a scene that'll ask them if they want a "New Game" (without extra features) or a "New Game +" (that will have extra features.) module DataManager class << self alias orig_CGO create_game_objects alias orig_MSC make_save_contents alias orig_XSC extract_save_contents end def self.create_game_objects orig_CGO #MY OBJECTS $extragame = false unless true $extragame_y = false end def self.make_save_contents contents = {} contents = orig_MSC #MY OBJECTS contents[:$extragame] = $extragame contents[:$extragame_y] = $extragame_y return contents end def self.extract_save_contents(contents) orig_XSC(contents) #MY OBJECTS $extragame = contents[:extragame] $extragame_y = contents[:extragame_y] end If they select New Game +, the setup for a new game will execute pretty much the same as normal, but with an addition that $extragame_y (as in "yes the player selected an extra game) will be set to true after the game has technically started. Before anything else will happen, the player will be immediately prompted in-game to save. That way when the player continues on that specific save file, the whole game will have extra features from then on. def newgame_extra DataManager.setup_new_game fadeout_all $game_map.autoplay SceneManager.goto(Scene_Map) $newgameplus_y = true end Everything is almost in place, except for the problem that if the player exits the game and re-opens it, the switch $extragame is set to false again. This doesn't happen if you go to the title screen, even if you don't save after triggering $extragame to be set to true. My solution is to find a way to make the state that switch $extragame is in to persist even after the game is closed. However, that could be an issue as well, since that means I could potentially publish the game with the switch already set to true because I've been testing out the extra game feature. I'm considering to solve this solution by having switch $extragame set to true at the very end of the game, making the game autosave on the save file the player is playing on, and then whenever the game is booted up it checks to see if there's a save file where $extragame is set to true. If there is a file that meets the requirements, then the player is given the option to play on a "New Game Plus" file. I feel like I'm so close to figuring it all out, but my last idea seems to be a little out of my element. I will continue researching what I can do. If anyone has any ideas, I would be happy to hear! Thank you for your time.
- 16 replies
-
- 2
-
-
- extra game
- persistent switches
-
(and 4 more)
Tagged with:
-
Creating a (Hopefully) Simple New Game Plus Feature
Zen Blood replied to Zen Blood's topic in Programming
Thank you, Kayzee. I really appreciate it. Just for the sake of learning, I'll try to make my own version, but it's truly a relief to know that I'm allowed to use something that works in case I just can't figure it out myself.- 16 replies
-
- 1
-
-
- extra game
- persistent switches
-
(and 4 more)
Tagged with:
-
Creating a (Hopefully) Simple New Game Plus Feature
Zen Blood replied to Zen Blood's topic in Programming
That's incredible. It works exactly in the way that I need it to work. I may still try to put together something myself, but just so I know for future reference, would I have your full permission to use this script in the game that I am making? It is a commercial project, and it is a horror game depicting sensitive material. If you are not comfortable with this, I understand. If you're alright with me using your script, then I am very grateful and I'd like to ask if you'd like to be credited.- 16 replies
-
- 1
-
-
- extra game
- persistent switches
-
(and 4 more)
Tagged with:
-
Creating a (Hopefully) Simple New Game Plus Feature
Zen Blood replied to Zen Blood's topic in Programming
Right now I have a few snippets of code I've been experimenting with. For one, the names of specific save files (Save01.rvdata2, Save02.rvdata2, Save03.rvdata2, ect;) I could use that to cycle through the different save files to check to see if a certain switch is on. I've also been playing around with the lines @Kayzee shared. By the way, thank you Kayzee! I often forget to check the manual, but also I don't always know what terms I want to look for and the search bar can be a bit picky. It's nice to have some direction. So I tried this as an example: $data_actors = load_data("Data/Actors.rvdata2") msgbox_p($data_actors) I get a little message box giving me a bunch of information about Data/Actors. From what I can tell, it's the condition Data/Actors are in at the beginning of the game. At least it means I'm successfully getting data information, as I should. "Data/Variables.rvdata2" or "Data/Switches.rvdata2" doesn't work, sadly. No surprise, since DataManager doesn't contain information on variables/switches. However, information on a switches'/variables' initial and current state in a specific save file must be kept somewhere. I may even decide to toss out the idea of a custom global variable/switch, in this case $extragame. Finding a custom variable might be a bit more complicated than finding the built-in variables and switches that are often called upon with $game_variables[ ] and $game_switches[ ] So now I'm tinkering with lines like "$game_variables[1].Save01.rvdata2". Doesn't work, sadly, but I'm going to try throwing alterations to see if anything sticks.- 16 replies
-
- extra game
- persistent switches
-
(and 4 more)
Tagged with:
-
Creating a (Hopefully) Simple New Game Plus Feature
Zen Blood replied to Zen Blood's topic in Programming
Unfortunately Yanfly's New Game + script requires Yanfly's Ace Save Engine script as well, which heavily alters my saving and loading UI, and possibly other things I'm not aware of at this moment. I could try to fish out all the problem lines of script in the Ace Save Engine, and I can understand using someone's script for a bit of guidance, but dismembering it and then using it as my own feels a little wrong. Not to mention it would take a while to differentiate what I can (and need to) cut out and what the New Game + script relies on. Though upon looking at Yanfly's New Game +, I see that $data_system.switches might play a role in telling the game to search individual game files to check if a certain switch is on within one of those saves. I have a sneaking feeling that Marshal.load/dump might be needed for this as well. I'm still wrapping my head around what exactly Marshal does, so I could be completely wrong.- 16 replies
-
- 1
-
-
- extra game
- persistent switches
-
(and 4 more)
Tagged with:
-
Creating a (Hopefully) Simple New Game Plus Feature
Zen Blood replied to Zen Blood's topic in Programming
I definitely plan on using it to control certain switches and variables. There's so much that could be done. However, the extent to which I take advantage of this feature will depend on how much more time I allow myself to develop my game. LoM sounds very interesting. Thank you very much! I would like to publish it for public use if I can make it streamline enough for a "plug and play" sort of script, as well as not needing to rely on anything too specific in my game. Ah yes, I have kind of lost my thought process as to why I used false unless true, haha. Thank you for pointing me in the direction of Game_Load, I'll see what I can find from there.- 16 replies
-
- 2
-
-
- extra game
- persistent switches
-
(and 4 more)
Tagged with:
-
Ah, I do, @PhoenixSoul! I actually made one a long while ago and forgot about it. Thanks for mentioning that, I've now revamped my store and added my game. Here it is.
-
I'm so happy to have a demo of my game out for people to play, after all this time.
It's gone through so much beta testing to get to this point. Not that it's perfect, but I feel like I'm almost ready to finish this project once and for all. I've got to let it go and let it be what it is.
- Show previous comments 2 more
-
-
@PhoenixSoul he is the thing playing in the background to whatever I'm doing, pretty much always. Put out a new vid in the last 24 hours for Legend of Kage, it's not bad
@Zen Blood seriously, congrats, keep it moving all the way to a full release! I've been putting at least 5 hours a night/morning for months now with my partner on our project, we're hoping to have a playable version of our battle system just to showcase by the end of next month. I literally cannot wait to get to a demo point, I bet it feels great :D
And I'm not gonna call the cops or anything, I actually had a nice time with the goon, he was just doing his job. He's like, super into MTG, and I've always wanted to get into that. We're supposed to hang out next Wednesday. I wonder what I'm gonna wear. Like, I want him to think I'm cool, but I don't want it to seem obvious.
-
Just watched AVGN's review of Legend of Kage last night. Never played it, don't wanna, lolz
-
Ah, I'm sorry to hear that. Perhaps I could give it to you in some other way?
-
Fleshport now has a demo released to the public! Download it here. Tell me what you think.
-
How do I change a cursor's starting position in a command window?
Zen Blood posted a topic in Programming
Hello, everyone. There was a thread on here that asked a similar question back in 2015, but it looked like the OP was attempting to create this effect for all windows, instead of a specific window like I want to do. I have a customized window for a puzzle that accesses class Window_HorzCommand. The player's selection cursor keeps redirecting to the first choice because I need to refresh the command bar each time a selection is made. I have found out that I can control where the cursor starts here: class Window_Command < Window_Selectable #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize(x, y) clear_command_list make_command_list super(x, y, window_width, window_height) refresh select(0) # <------ Right there activate end Here's the order of my classes: Window_CustomWindow < Window_HorzCommand, Window_HorzCommand < Window_Command I want to Window_Command's select value specifically for Window_CustomWindow. From that point on, I can easily figure out what to do. I'd just need to create a variable that changes depending on the player's last selection, that would change the value of select, so that the cursor would begin in the player's last selected position. How would I change select for my custom class? I feel it may involve an alias, or something, but nothing is coming together in my head. Thank you for your time! -
Hello! I was hoping to program a text line in my save files that indicates where the player is at when they save the game. I've created a global variable ($v_player_location) that is set as a string so I can change the labeled "location" on a whim without having to change the map names in the editor. The player interacts with an event, within that event I have $v_player_location set to whatever location name I want it to be, and then the game saves. The "player location" does indeed show on the save files, but the issue here is that the location for every save file is portrayed as the same string because it's reflecting what $v_player_location currently is, instead of what it was at the time of each individual save. I was able to make the save files show individual play times. def draw_playtime(x, y, width, align) header = DataManager.load_header(@file_index) return unless header draw_text(x, y, width, line_height, "play time: " + header[:playtime_s], 2) end As you can see, it uses the symbol :playtime_s It's been a while since I added the play time, so I'm not sure what "header" is referring to, whether its something I created or a system already in place within the RPGMVXA engine. Don't mind me, I'm half asleep. I've found that "header" is referring to the "def self.make_save_header" line within DataManager. I tried to turn the location into a symbol, too, that would initiate upon a new game and set when the player saves. def draw_location(x, y, width, align) draw_text(x, y, width, line_height, "location: " + contents[:plocation], 4) end This did not work. It seems as though I need to figure out how to tell the program I want to access :plocation within contents, but that one line alone can't do it. I probably have to do some version of the line "header = DataManager.load_header(@file_index)" to access :plocation, from what I can tell. Would anyone happen to have any ideas as to how I can grab the contents of a variable for each individual save and display it on the save files? Edit: Here's another piece of the puzzle that shows how the individual play times where achievable. It was also located in DataManager. Interestingly, it's referenced using "DataManager.load_header(@file_index)" instead of "DataManager.load_header_without_rescue(@file_index)". #-------------------------------------------------------------------------- # * Load Save Header (No Exception Processing) #-------------------------------------------------------------------------- def self.load_header_without_rescue(index) File.open(make_filename(index), "rb") do |file| return Marshal.load(file) end return nil end I had a feeling this would dig into the Marshal load/dump/ect; I'm not entirely sure where to go from here, but I'll keep plugging anyway at it. Another Edit: I read up on a similar question someone had, and a person offered a solution to add the variable under header. I was originally trying to place the variable under "contents". Supposedly, this was what would make the variable work. class << DataManager def self.create_game_objects orig_CGO #This works, I'm just not showing the rest of the script here. #MY OBJECTS $v_player_location = "" #blank at the beginning of the game end alias_method(:new_make_save_header, :make_save_header) def make_save_header header = new_make_save_header header[:plocation] = $v_player_location header end end #END CLASS class Window_SaveFile < Window_Base def draw_location(x, y, width, align) header = DataManager.load_header(@file_index) return unless header draw_text(x, y, width, line_height, "location: " + header[:plocation], 4) end end #END CLASS It doesn't, I'm getting an error "can't convert nil into string". This error goes away when I replace header[:plocation] in def draw_location with a string. So that's the issue here. It thinks :plocation is nil, even though I've at least given it a blank string and have it's string changed before a save file is made. Update: This error also goes away when I omit "location " + and keep header[:plocation]. This works well enough for me, but for future sake, I'd like to know why I can include "playtime: " + alongside header[:playtime_s], but not "location " + alongside header[:plocation]. Solution 1: If you're happy with just the variable showing without another string on the same line, this template should work for you. Thank you for reading!
-
So guys, what have you gotten accomplished today? I you haven't done anything yet, do something, even if it's small!
-
If anyone is interested in beta testing (volunteer or paid) within the next couple months, I am accepting one more beta tester. After September 25th, I shall not be accepting any more beta testers.
-
Ruby/RGSS3 questions that don't deserve their own thread
Zen Blood replied to kal's topic in Programming
Thank you, @Kayzee, not only for explaining that to me but for your speedy response too! I did end up finding a work around by temporarily deactivating the event page the script is called in and reactivating it after event #2 started executing its commands. Since it was activated last, it now it takes priority! :) -
Ruby/RGSS3 questions that don't deserve their own thread
Zen Blood replied to kal's topic in Programming
Hello! Question: Is there any way to check if a ruby method is running? Something akin to, "method.is_running?" I have a script that affects event # 1's move route, but event # 1's move route is being controlled by a separate event, event # 2. Because of this, the script doesn't take priority and event #1 will only carry out event #2's commands. This doesn't happen if event #1 is controlling its own move route, but for reasons I can't do that. So I want to check if the script is running so I can disable event #2. -
Good evening! I have a script I'm creating so that the player can have multiple outfits and change to the correct outfit when they're performing an animated action. For instance, if the player collides with an event that causes them to trip, I want the player's graphic to change to the appropriate "tripping" sprite set for the outfit they currently have equipped, and then play out the tripping animation in a specific way. The script is actually working pretty well so far, except for one little detail. For the "tripping" animation, I want to change the player's sprite so that the sprite is at a specific point in its step animation and to stay there until I command the sprite to be reset. Currently, this is how I have the sprite setup: The leftmost sprite is the player standing vertically. The middle sprite is the player mid-fall. The rightmost sprite is the player horizontally on the floor. I know how to do this within an event. In a move route command, you would select 'script' and write in: @pattern = #insert 0 - 2 here # 0 = right leg out (leftmost sprite) # 1 = resting # 2 = left leg out (rightmost sprite) Which would cause the target to temporarily jump to that sprite in its stepping animation. For some reason, it resets back to the "resting" sprite, but at least it's doing something right. Calling @pattern = 2 in my custom class doesn't do anything, even though calling $game_player.jump(1, 0) forces the player to jump like it's supposed to do. If I can't use a script call to simply do this, I'm thinking I could probably use the script call for 'Set Move Route' and ask it to call @pattern = 2 there. I've been looking up ways to script a move route, but so far they've only left me confused. Here's my notes on an example: I tried using this, and while the game doesn't crash, nothing happens either. As a test, I tried replacing "45" with "13" (stepping backwards) and had the same result. So it must not be executing at all. I realize I could achieve what I want to do easily via Galv's Move Route Extras (which I do actually have implemented), but just in case I decide to remove that script or use my script for another game, I do not want it depending on someone else's script to work. As a last resort, I may use it anyway. Update: I am now seeing if I can manipulate instance variables from another class. class Game_Character < Game_CharacterBase attr_accessor :step_anime attr_accessor :pattern end Now from my custom class I can call $game_player.step_anime = 2 and $game_player.step_anime = false in an attempt to set the player's sprite and pause their stepping animation once its set. I actually works to a degree! But after the player sprite goes to the last frame it will immediately pop back to the middle frame. I'd still like to learn how to make this work exactly how I want it to, but I can use this as-is if I'm willing to compromise on the time it takes for the player to "get up" (which would be making it shorter so that there's no time for the animation to reset back to the middle frame). Thank you very much for your time.
- 3 replies
-
- pause animation
- stepping animation
-
(and 2 more)
Tagged with:
-
Ohh! I had noticed @original_pattern being used, but I wasn't comprehending what it was doing exactly. It helps to have another perspective. With that info, I think I got it fully working now. Thank you so much @Kayzee!
- 3 replies
-
- pause animation
- stepping animation
-
(and 2 more)
Tagged with:
-
It's been a while, but I finally have gotten around to setting up the hash and variables beyond initiating them. I was able to initiate the hash and variables upon the game starting just fine! However, when I set up how the hash loads, I get this error. Here's what the three script snippets look like right now: Would anyone happen to know what I'm doing wrong?
- 5 replies
-
- array
- global array
-
(and 2 more)
Tagged with:


