Skip to main content
$12256 / $11500
About
Rules
Blog
FAQ
Style
Forum
Godot tutorial series by GameFromScratch.com
Tutorials
Godot tutorial series by GameFromScratch.com
Calinou
Thursday, April 9, 2015 - 01:23
http://www.gamefromscratch.com/?tag=/Godot
A series of tutorials with
Godot
, still in progress.
Awesome!
libgdx X Godot?
How customizable is this engine? Can it handle batch scripting?
It uses its own scripting language, GDScript, but you can extend the engine in C++.
Well Under scripts, open scripts (THE NEW button is missing so I can't create a new script), There should also be a browse button present when changing the directory paths so I can change to another directory on my hdd but that button is missing also so the program has me stuck at \\res. This engine don't support Batch code Scripts. As my rpg game has over 714 thousand lines of batch code script .I use emeditor to write my batch code with as it can handle huge file sizes.
This is not a bug, this is a design decision.
You have to import your scripts before using them in the game, using the Import menu. This is true for 3D models, fonts and sounds, although you can place textures directly in the project folder.
The engine doesn't support Batch scripting, but GDScript might be a little more readable. :)
To create a new script you have to click on Resources (top-right) and then on "create new resource" and GDScript. It's really a bit odd that you can't create a new script in the script file menu.
Well it should support the batch scripting for those who do use dos batch window scripting. Can't the developers just write a proper install program and copy all the necessry files that way
I can change options but I cant even get the program to show anything up in the viewpoints, its all blank.I really don't think much of this, Its described in confusing 3d Blender language. Reading the help section is like trying to read a complicated Progammers Text manual. Its been written for advanced users only.
Its also not user friendly. Delete a new resource you just loaded by hitting the (X) icon and poof, away it dissapears into null space without even a warning like 'Do you really want to delete this resource item Y or N?"
It has layout issues. Everything under resources is just one big long scrollbar menu instead of tabs. and the mini menus which are fixed, can't be docked or floated to customize also have too many options, more scrolling down to try to find things. In the end the program is cumbersome and slow because of these issues.
First thank you for your detailed feed back. It may prove helpful in future developments.
I would like to take the time to comment on a few things though.
Tozan to the best of my knowledge most people do not use batch code for game development. That language was designed for something else and lacks the speed and functions that at least I would like out of a game development language. It is possible to add batch script support to Godot however you would have to write a new module in C++ in order to do it ( See: https://github.com/okamstudio/godot/wiki/custom_modules ). However, I am unaware of any game 3D game engines that support batch by default. A quick Google search does turn up batch game engine but I do not know how much help they would be.
Being some what experienced with both programs I can tell you that Godot and Blender have completely different bad interfaces. However, the point remains. Godots interface is not for everyone and haveing a background in a Unix based operating system and 3D modeling are huge assets. I expect this to improve some over time. In part because the engine has been out for about one year now, haveing just reached version 1.1, and is still missing a lot of documentation. All that said, I doubt Godot will ever become so user friendly anyone can just grab it and go. The online documentation can be found here: https://github.com/okamstudio/godot/wiki
As a note, useing a game engine like Unity or Godot is nothing like writing a game from scratch. To under stand these engines you need to understand "prefabs" and "parenting".
* A prefab (Godot tucks this into an idea they call "Nodes") is basicly a collection of assets and properties that you can use in your game as many times as you want (called "instancing"). By default all of the instances are exactly the same as the prefab, however you can use scripting to make derived versions of the prefab. This allows you to easilly put the same thing (like generic NPC, bullets, or background stuff) on the screen without haveing to actually recreate them over and over again. This system can also be used on entire game modes (known as scenes). I know Godot does that I am not sure if Unity does.
* Parenting works in sets, there is the parent and the children. If the child moves nothing interesting happens, but if the parent moves all of the children move with it. In 3D modelling (it might affect more in any given engine) this affects things like what is in the scene, where something moves (translation), how it is spun (rotation), and it's size (scale). Now an important point is that all of these are relative to the parent. So if you rotate the parent 90 degrees the child will still be just as far away from the parent as before and both be on the same side of the parent as it was and faceing the same direction relative to the parent as it was. The real world example of this are the folders (or directories) on your computer. If you have a folder (the child) in a folder (the parent) then you can move it about however you wish, but as long as it is still a child of the parent folder then when you move the parent the child moves with it.
Quote: Tozan
--------------------------------------------------
One of the WORSE things a programmer can do is is stray from Indstry Standards and this is what INDY programmers have a problem with, and create their own language and jardon and that just only complicate things.....
--------------------------------------------------
Nope, today we have to choose from any of these programing laguages:
http://en.wikipedia.org/wiki/List_of_programming_languages
any of the image formats:
http://en.wikipedia.org/wiki/Image_file_formats
any of these 3D fomats:
http://en.wikipedia.org/wiki/List_of_file_formats#3-D_graphics
and any of these audio formats:
http://en.wikipedia.org/wiki/Audio_file_format#List_of_formats
but, the point is we have a choice. We get to step back and try to figure out what is the right tool for the job, or if nessasary make a new one. Every one of these is a break from some previous standard and, at least at that time, every one of them offered its own unique advantages. By stepping out developers have the chance to show the world a better way. Granted most times the world sends it back like a pie to the face, but if no one ever tried computers would not be what they are today.
Fun note, Windows was a non industry standard compliant operating system created by an indie.
I find batch script to be an interesting language. But lacks the execution speed. and also lacks a 3d engine, and lacks also the Transparency needed for Sprites and animation. In writing the game, I find i have to define alot of different variables. Because this game has a thousand level progressions in it, but its not just level progressions but also damage progressions, health progressions and random progressions. And I am wondering if there is an much easier shorter way to code all the progressions.
if %curlvl% EQU 2 set /a dmg=%random% %%100+10
if %curlvl% EQU 3 set /a dmg=%random% %%120+10
if %curlvl% EQU 4 set /a dmg=%random% %%140+10
if %curlvl% EQU 5 set /a dmg=%random% %%160+10 (ect.ect)
Money reward Progression:
if %curlvl% EQU 2 set maxmoney=1062
if %curlvl% EQU 3 set maxmoney=1168
if %curlvl% EQU 4 set maxmoney=1836
if %curlvl% EQU 5 set maxmoney=2080
ect.ect.
Experience given progression:
if %curlvl% EQU 1 set addxp=400
if %curlvl% EQU 2 set addxp=500
if %curlvl% EQU 3 set addxp=500
if %curlvl% EQU 4 set addxp=600
if %curlvl% EQU 5 set addxp=700
ect...
As for Godot, how do you get anything to render? I still can't get anything to display up in the viewports, I go into new resources and load the different resources in but nothing shows up on the 3d viewport. nothing renders. the program also has layout issues. Everything under resources is all put into one big long scroll menu and the smaller menus also have too many options, you can't dock the menus to customize them to suit your own needs and also the documention of the program, its advanced. couched deep in its own programming code so its not gonna suit all users.
I couldn't find any documentation to explain all the Godot script, nor did I see any scripting examples that I could load in to see how the scripts is actually structured........ Because if there's no install, (I didn't see the program unpack and install anything) or tell me where the program is being installed to, it just only creates a project directroy and if the program only just runs in memory, how can I find the godot script examples? Where are all the script demonstrations for this program?
So I can't find much solid structure in this program, its just a few things been slapped together to help in 3d modeling, and texturing, its a front end of some sort, dosen't look like a full game engine, its more like a 3d modeling resource helper. As for windows, half of windows does sit on a bunch of batch files.
Having all these many languages and formats, the growing list just makes things more complicated for those who don't know all of those languages and formats. Clear, concise documentation has to be written for each of them.
One of the advantages I had in doing the game in simple windows batch script, is that I could get it written very fast and get a rough idea of what the whole gameworld is goig to look like BEFORE trying to attempt to do this game inside a 3d engine., had I tried to write it in C+++, I would be here for YEARS trying to get the scripting all done in that language, that's why I didn't choose C++.
But I don't know how to go about creating this type of game on a 3d game engine because with a game like this I need the engine to draw sectors of it at a time when rendering (seamless backloading) as the whole game playing area is just too big for the engine to render it all at once but most 3d engines limit you as to how much area space you are allowed to render. So just like Red Faction Editor, I need to Daisy chain all the sectors through seamless loading. Or like they did in Morrowind to provide smooth seamless endless scrolling of all the game regions. I don't know how to set it up like that in a 3d game engine.
You'll soon see what I mean, by writing a huge game out in windows batch script. here's the map (NOT finished yet) for the Trolll Mountains Region and this is just one of three sectors for the region. These playing screens have been put roughly together to give an outline of what the sector will look like (that's why there are many copies of the player in the pictures. This is just to give is a rough look as to what the map will be like once its all been seamed.).
As this game is huge, has over 20 square miles to roam around i and i did this game because I like playing open world non linear outdoor rpg games..
Each one of these screens contain about 2 thousand lines of code each because of all the many different progressions variables that had to be defined to get the game to play out as a hack 'b' slash grinder progression level exploration game...
What a big difference this game would make if it could only scroll all its screens and have animated rigged models roaming around..
trollmsec1.jpg 314.1 Kb [10 download(s)]
trollsec2.jpg 212.4 Kb [5 download(s)]
OFF-TOPIC, moved here
Thanks for helping me to understand it a little better, it Sounds interesting, I thought Games like Morrowind, and Sacred may have been done by using the camera viewport, to draw the screen , I knoq in the Red Editor they used portals brushes instead to tell the engine what to draw on the screen orwhat not to..
I didn't know how to write out the formulas in batch code, that's why I had to I had to do it 1 line at a time. So the updating for monster health, damage, player health and player damage go into the level up section of the code for defining all the level progressions. Okay but soemtimes if I have special progressions, i may have to keep those progressions in the actual screen area. I use the Random Dice for making the game just pick out a random number (not alwys based on the players current level), sometimes I need the computer to randomly pick an event and trigger it like picking certain foley sounds, or random enemy encounters after you visit a certain area you can revist and something different triggers off.
I also do this as well when the player dies, pick a random room in the game for the player to warp to. theres about 400 rooms now in the game.
I also needed to get the Overdrive progress bar to increase by 1 point for every monster killed to display the overdrive progress bar no matter where you are in the game so for every 260 or so kills the overdrive fills up the bar and then upgrades itself to a new more powerful overdrive, so there are up to 7 of these bar fill upgrades.... but I don't know how to write that out as a formula. and then just stick it in once place the computer always loops back to so everytime I kill something no matter what screen I'm on in the game the bar ticks up a notch..
And Things like Collecting Dragon Orbs I had to embed that code into all the screens that had the orbs scattered around, its only a very small piece of code of only just abt 5-6 lines long. so I didn't think that was a big deal to repeat that small piece of code on the screens where the orbs all are.
And because it was written in Batch code using the console to display the graphics in, I had to redraw an extra area the orbs were on one or when you had killed enemies so you could see thier corpses..
OFF-TOPIC, moved here.
Thanks for those files.
Hi Torzan - prob should remove your last couple of posts as well! our conversation had nothing to do with Godot, use this new topic. Thanks
MODS: Feel free to fully hide/delete my off-topic posts here.