(09-29-2023, 01:26 AM)DerVVulfman Wrote: Um... Short version?
RM2K Defined Encounters Areas
by RPG Advocate (like heckin 2005 era)
This script allows you to set up rectangular areas with different encounters like the map editor functionality of RPG Maker 2000 and 2003.
-or-
Expanded Encounter Areas
by DerVVulfman (07-19-2020)
his script allows the game developer to designate areas within one or more field maps to have designated areas where additional enemy troops may be encountered by way of random encounters. It allows for a change of the number of steps required to trigger any such random encounters and is compatible with Big Maps by DerVVulfman.
==BONUS: Includes Colored Encounter Areas so you can press Shift to see highlighted map areas for debugging.
I ought to know by now that there would be scripts to bring features that should really be in the base game.
(09-29-2023, 02:04 PM)KasperKalamity Wrote:
(09-29-2023, 01:26 AM)DerVVulfman Wrote: Um... Short version?
[helpful stuff]
Short version is I get really high before I work on my game and the instructions came to me from the ether as I was doing it lolololol. I have nothing against scripts other than that I don't know how to script or how to use them. It already took me 19 years to figure how to use variables
I respect that. I've got so many scripts in my project that trying a new one while hoping that it doesn't break the game is akin to playing Russian roulette with 5 out of 6 chambers loaded.
Widget workings still going on, but more towards automation and shortcuts for users...
How boring is it to create a window, then have to create the drawing area IN that window... and then to create a scroll bar IN the window that must be tied to the drawing area. That was something that seemed to be MEH!!!
The Long way...
Code:
# -----------------------------------------------------------------------
# CREATE: Widgets::Window
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# This section defines this class as a Widgets::Window object.
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# Define values that are passed into the Widgets:Window superclass
title = "The Widgets" # Display a title bar
user_close = true # Creates the close button in the title
default_contents = false # Contents based on window width/height
dragable = true # Allow drag-n-drop of the window
#
# Perform the initialization of the Widgets:Window superclass
super(x, y, width, height, title, user_close, default_contents, dragable)
#
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# -----------------------------------------------------------------------
# This section creates the content area where all widgets are drawn.
# The 'create_contents' method is part of the Widgets:Window class.
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# First, define the drawing area:
# The width must recognize the scrollbar width (16px) and 2 border widths
# The height must recognize the titlebar (20px) and 2 border widths
src_rect = Rect.new(0, 0, width - 20, height - 24)
#
# Now create the content area, including placement based on offsets and
# have a height larger than the window to permit vertical scrolling
rx = @offset_x # x-coordinate in the screen
ry = @offset_y + 20 # y-coordinate in the screen + title bar
rw = width # The window width
rh = 466 # Area larger than window height for scrolling
create_contents(rx, ry, rw, rh, src_rect)
#
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# -----------------------------------------------------------------------
# This section creates the scrollbar and ties it to the contents area
# The assumption is that it is a vertical scrollbar on the right
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# Calculate bar placement, related to position in current window
# Value: ry = window width minus the bar width (16px) & 2px border
# Value: ry = height adjusting for title bar (20px) and 2px top border
# Value: length = scrollbar length
# length is window height minus title bar (20px) and both
# 2px top border and bottom 2px edges
#
rx = @x + @width - (16 + 2) # the right edge, minus bar and border
ry = @y + (20 + 2) # top considering title bar and border
length = height - (20 + 4) # height minus title and both borders
create_scrollbar(rx, ry, 0, length)
#
# -----------------------------------------------------------------------
I put in a lot of comments in there for reflection and identification what the heck was going on. The first block just creates the window itself, defining its position and shape, if it has a title box, that little [X] box, and if I can drag it across the screen.
But the stuff below ... that's a lot of content. The first making the content window... and making the height '466' so it is loooonger than the window so it can be scrolled up and down. Second, making the scroll bar itself, aligning on the right side of the window and making it the right length.
That's a lot... so... I shortened it greatly.
The Short way...
Code:
# -----------------------------------------------------------------------
# CREATE: Widgets::Window
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# This section defines this class as a Widgets::Window object.
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# Define otherl values that are passed into the Widgets:Window superclass
title = "The Widgets" # Display a title bar
user_close = true # Creates the close button in the title
default_contents = false #
dragable = true # Allow drag-n-drop of the window
#
# Perform the initialization of the Widgets:Window superclass
super(x, y, width, height, title, user_close, default_contents, dragable)
#
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Create the visible area, considering window width, an extended height
# for scrolling, and the type of scrollbar.
#
area_create(width, 466,1)
Yeah, all that code I needed to type to create any windows content and scrollbar have now been summed up into a freakin' single statement. Here, you pass the width, the height, and a number from 0-5... 0 meaning no scroll bar.
However, if you have no scroll bar, then the width and height are moot and resets to the window width and height anyway. It's pretty much as if you want the windows to create the default content area (setting default_contents = true). I put in a lot of preventative measures within.
This landmass of Bounty Hunter Lani's was mapped out into a 1600x1600 tile map... but a seamless one without need of tleport-based map connections. So you can literally walk from the capital city of Ruma in the northwest to the city of Zan in the south east.... though it would take over 30 minutes game-time to do so. It's a 15 minute game-time trip to reach Zan from Lambast alone. Thank gawd for obelisk fast-travel teleports and vehicles
(09-30-2023, 05:07 PM)Steel Beast 6Beets Wrote: Just posting to acknowledge that on this day a decade ago I joined this forum. Time does fly.
Got no idea where that's from... but a guy is celebrating on a tank.
Meanwhile, resizing the windows ... works!
The scrollbar re-lengthens to fit the window. And re-adjusts its x or y position if set to be on the right or bottom of the window. And more... the background content image scales to fit!
Today, I managed to shrink down the content/scrollbar code to one statement, shrink down the resizing code to one line, and get the content background to shrink.
You're definitely obsessed with Ryoko and that proves my point of you always being running after rebellious gals like the medieval like punk girl Amelia Will Sayloon.
By the way, I'm out of ideas for new scripts or new features. The only thing I've done as of late was something i haven't posted for a week or so.
(09-30-2023, 03:59 PM)DerVVulfman Wrote: Widget workings still going on, but more towards automation and shortcuts for users...
How boring is it to create a window, then have to create the drawing area IN that window... and then to create a scroll bar IN the window that must be tied to the drawing area. That was something that seemed to be MEH!!!
The Long way...
Code:
# -----------------------------------------------------------------------
# CREATE: Widgets::Window
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# This section defines this class as a Widgets::Window object.
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# Define values that are passed into the Widgets:Window superclass
title = "The Widgets" # Display a title bar
user_close = true # Creates the close button in the title
default_contents = false # Contents based on window width/height
dragable = true # Allow drag-n-drop of the window
#
# Perform the initialization of the Widgets:Window superclass
super(x, y, width, height, title, user_close, default_contents, dragable)
#
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# -----------------------------------------------------------------------
# This section creates the content area where all widgets are drawn.
# The 'create_contents' method is part of the Widgets:Window class.
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# First, define the drawing area:
# The width must recognize the scrollbar width (16px) and 2 border widths
# The height must recognize the titlebar (20px) and 2 border widths
src_rect = Rect.new(0, 0, width - 20, height - 24)
#
# Now create the content area, including placement based on offsets and
# have a height larger than the window to permit vertical scrolling
rx = @offset_x # x-coordinate in the screen
ry = @offset_y + 20 # y-coordinate in the screen + title bar
rw = width # The window width
rh = 466 # Area larger than window height for scrolling
create_contents(rx, ry, rw, rh, src_rect)
#
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# -----------------------------------------------------------------------
# This section creates the scrollbar and ties it to the contents area
# The assumption is that it is a vertical scrollbar on the right
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# Calculate bar placement, related to position in current window
# Value: ry = window width minus the bar width (16px) & 2px border
# Value: ry = height adjusting for title bar (20px) and 2px top border
# Value: length = scrollbar length
# length is window height minus title bar (20px) and both
# 2px top border and bottom 2px edges
#
rx = @x + @width - (16 + 2) # the right edge, minus bar and border
ry = @y + (20 + 2) # top considering title bar and border
length = height - (20 + 4) # height minus title and both borders
create_scrollbar(rx, ry, 0, length)
#
# -----------------------------------------------------------------------
I put in a lot of comments in there for reflection and identification what the heck was going on. The first block just creates the window itself, defining its position and shape, if it has a title box, that little [X] box, and if I can drag it across the screen.
But the stuff below ... that's a lot of content. The first making the content window... and making the height '466' so it is loooonger than the window so it can be scrolled up and down. Second, making the scroll bar itself, aligning on the right side of the window and making it the right length.
That's a lot... so... I shortened it greatly.
The Short way...
Code:
# -----------------------------------------------------------------------
# CREATE: Widgets::Window
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# This section defines this class as a Widgets::Window object.
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
# Define otherl values that are passed into the Widgets:Window superclass
title = "The Widgets" # Display a title bar
user_close = true # Creates the close button in the title
default_contents = false #
dragable = true # Allow drag-n-drop of the window
#
# Perform the initialization of the Widgets:Window superclass
super(x, y, width, height, title, user_close, default_contents, dragable)
#
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Create the visible area, considering window width, an extended height
# for scrolling, and the type of scrollbar.
#
area_create(width, 466,1)
Yeah, all that code I needed to type to create any windows content and scrollbar have now been summed up into a freakin' single statement. Here, you pass the width, the height, and a number from 0-5... 0 meaning no scroll bar.
However, if you have no scroll bar, then the width and height are moot and resets to the window width and height anyway. It's pretty much as if you want the windows to create the default content area (setting default_contents = true). I put in a lot of preventative measures within.
This landmass of Bounty Hunter Lani's was mapped out into a 1600x1600 tile map... but a seamless one without need of tleport-based map connections. So you can literally walk from the capital city of Ruma in the northwest to the city of Zan in the south east.... though it would take over 30 minutes game-time to do so. It's a 15 minute game-time trip to reach Zan from Lambast alone. Thank gawd for obelisk fast-travel teleports and vehicles
how did you break the 500x500? i need that in my life
This landmass of Bounty Hunter Lani's was mapped out into a 1600x1600 tile map... but a seamless one without need of tleport-based map connections. So you can literally walk from the capital city of Ruma in the northwest to the city of Zan in the south east.... though it would take over 30 minutes game-time to do so. It's a 15 minute game-time trip to reach Zan from Lambast alone. Thank gawd for obelisk fast-travel teleports and vehicles
how did you break the 500x500? i need that in my life
Ahhh... it's a script called..... BIG MAPS
It takes multiple maps (that must be equal sized) and stitched together in a gridwork pattern... 1x2, 2x2, 2x4... whatever. You need to use a hash array to stitch the maps together. But... events from one of the 'stitched' maps can now cross the borders to the other maps. Essentially combining all the events, all the wandering monsters, whatever. And I have in the script a list of 'other' scripts it works with that I tested.
I write a lot of instructions as you know.
I wonder if someone will return to his RMXP-VXAce replacer... for Windows..... *cough* .... Ideas...
Well, another Widgets gif...
I figured you should see that buttons do get depressed when clicked.
And I worked to ensure that windows that vanished would restore their 'title bar' and 'scrollbar' ... if they were present. Technically, I neglected to ensure they were returned when I added the visible trait to the windows. Only the contents within changed visibility at the start.
And I had some issue with the drawn backdrop image losing parts of itself if I clicked something. Such as clicking a round radio button that was atop of a background. Clicking it would erase the background image behind it, but that issue is now fixed.
And for some who don't seem to like Ryoko (wow... he's so weak around strong women)... So... I decided to use TWO STRONG WOMEN!!!! AND THEY WORK FOR THE GOVERNMENT AND CARRY GUNS!!!!! MWAHAHA!!!!
Some Weird Punk-Girl-Obsessed Wulfo Wrote:I wonder if someone will return to his RMXP-VXAce replacer... for Windows..... *cough* .... Ideas...
Wondering what could that replacer be...
I think I've got some scripting idea but I don't know how good or bad that might actually be.
The script would be about equipment getting states just like people do in the RM series.
Why? Because they can be enchanted, forged, etc. so why not being targeted by states as well?
The only problem with it is that no matter what engine I choose to work on implementing that feature, it has the potential of rewriting whole portions of the default battle system, thus, turning it into a custom battle system on its own right.
So i finished flight (well, it's first demo!), the game to occupy my time until I got files.
I still have no files...
;_;
Well shit! Now what am I supposed to do!?
I did not expect to get a Demo done in a month, what the hell!
Maybe I'll start on the Tiramisa prequel QUASIROYAL just cause I should already have most of the resources I need for that and its basically a talk n' walk game.
Tiramisa is another of those characters who has a lot of backstory but a lot of it is sealed exclusively within apocrypha.