I would suggest that actually familiarizing yourself with a new language and trying to learn about the codebase you're trying to integrate code into makes more sense as a first step, as opposed to trying to adapt existing code of any complexity.
I have to personally disagree. not because there is anything wrong with that way of learning, but it simply doesn't jive with how I learn or figure things out. to me, taking code of something I wrote and understand in one language, and figuring out how to make that exact same thing in another language is how I am trying to learn. it gives a distinct project, with actual motivation to complete it, and a clear end goal (successfully translating the functionality of the system from one state to another).
As a basic example, if you don't know how RPG Maker works, handles map data and displays it graphically, how is your maze generator going to accomplish anything in the context of a game?
after having made my C# prototype I kinda realized "maze generator" was maybe an inaccurate term for what i wanted. a better term was maybe a dungeon randomizer? specifically for allowing randomized player transfer calls without hard coding anything while still making a functional dungeon with the parameters I desire. so instead of using player transfer with the input data of the mapid of the destination map and the x,y coordinates, I can call my plugin and give it a direction*, and it grabs the current mapID, figures out what room is in the corrisponding direction in its 2D array, and go to that room, deriving the X,Y postions from region IDs
*(the enum originally, but i have already seen from other plugins I can make the parameters a hard list of set choices and then just connect those to those const to effectively keep the same functionality)
there are defininietely some parts in that setup I do not know how to do in rpgmaker yet, I won't pretend I do, but that is literally what I am in the forums asking about. things I don't know yet.
like literally, my next question for the Maze_Data datatype was the exact syntax for handing it a mapID in its constructor, and from that how to pull out the data I need from a map, since I know its possible, i just don't know how.
It might be more reasonable to do some small plugin that modifies a part of your game, or look at how the existing codebase and plugins for it are written
that is literally what I am doing tho? I don't conseve of this as a particually big plugin. like its big in terms of code, but its functionality and purpose is fairly simple.
and I have infact been looking at the codebase for the plugins to get as far as i have been now.
I didn't realize I also could see like the main codebase till you mentioned checking rmmz_objects, but now that I know that I can look at that too.
You can simply declare them outside of any other code blocks as in my first example above and they'll be global variables. I guess this is not a thing in C#, although it was in C/++.
you can declare them in a class in C#. the way i have them written in my above C# code for the stuct is the same as a class.
I think the thing I am being thrown off is possibly scoping differences between C# and javascript. in C# declaring a random varible like an int or whatever outside the scope of something like a class or struct or what have you is kinda not a thing (or if it is a thing I ain't ever seen it).