Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Omega

Pages: 1 2 3 4 5 [6] 7 8 9 10 ... 246
126
I just realized that Tiger's implementation introduced a new tag for start-ep (eg, use <start-ep value="500" /> as a child of the parameters tag).

It's not documented anywhere, and I don't believe it's been released yet (given that the last release was in January). I propose that we instead use arguments of the existing hp and ep tags, eg:

Code: [Select]
<parameters>
    <!-- ... -->
    <max-hp value="500" regeneration="1" start-value="500" />
    <max-ep value="500" regeneration="1" start-percent="0.5" />
    <!-- ... -->
</parameters>

I think this does a better job of putting related values together while being more consistent (why should the starting value be on its own tag if regeneration isn't)?

127
The project files create a megaglest.exe, but for whatever reason, the expected output is glest_game.exe (presumably the original binary as created for vanilla Glest). The various debugging files are also named glest_game.*.

The project file should be updated to use the correct names. With the wrong name, MSVS is not able to run the binary. I'm not entirely sure how the debug files are used, but I imagine that having the wrong name affects them, too.

This is as of rev 31def0dc1ae.

128
It appears that the script located in mk/windoze/CopyWindowsRuntimeDlls_2010.bat (which the readme describes as necessary for running the program) is outdated.

First of all, either the readme is missing crucial information about how to run this script or all the paths are wrong. It should be copying files to the data/glest_game directory, but instead copies to the current directory. Strangely enough, there's commented out lines (for obviously outdated DLLs) that have the right path. It's the active lines that have the wrong paths.

Anyway, even after manually copying over all the files, the program doesn't run. It appears that not all libraries are included. I think it was just the 7zip stuff that was missing (although I actually copied all the DLLs and the plugins and lua folder from my install of 3.9.0).

As an aside, I also have two related observations:
  • The error messages when the program was started with missing libraries is very bad. It basically says "MegaGlest encountered an error and must close, send us this dmp that you can't read" instead of a more ideal notification about the exact libraries that are missing. It seems that *some* libraries do have better error messages (I initially forgot to copy DLLs and received an error about missing libvlc).
  • In mk/windoze/CopyWindowsRuntimeDlls_2010.bat, there's some copy operations that are only performed if a file does not already exist. IMO, this is not an ideal approach. What if the libraries need to be updated in the future? Not overwriting the files would fail to update them properly.
  • The commented out lines (that start with rem) should probably be removed. They hold no current value and made me originally question if these files were supposed to be copied too (ie, they're confusing to the reader). All those files aren't used anymore, and most don't even exist in the windows deps package.

This is relevant as per the develop branch at rev 31def0dc1a.

129
ExceptionHandler::handle(LPEXCEPTION_POINTERS) in main.cpp references stackdumper(), which is only visible if _DEBUG is not defined. As a result, there's compile time errors when compiling in debug mode.

This is on branch develop (I presume that's the active development branch; couldn't find any info about how the project uses branches) as of rev 31def0dc1a. This is applicable to MSVS 2010 (should affect all MSVS versions).

EDIT: Actually, it turns out that the code inside the #IFDEFs doesn't compile, anyway. It uses non-existent variables. It's not clear why.

130
Closed feature requests / Re: health bars (old topic relaunch!)
« on: 19 July 2014, 02:47:36 »
If you were to add a health bar, I'd also ask for this ring-colour feature to be removed; It's hard to tell if you've selected the unit when the unit's health is low because the ring becomes very dark.
Agreed. The ring can be used to show selection, only.

131
Omega do you care for start hp? Would not be much work to implement it.
I missed this post. I should note that I am not one of the developers of the game (I mostly just manage the forum, wiki, and some miscellaneous web stuff). I keep telling myself that I should contribute, but I'm kind of a snob when it comes to programming style (never liked C++'s disregard for safety and the "older style" of C++ code used in MG).

EDIT: But you know what, I just might take a look into it. I'll be slow though. My C++ is rusty and I'm not familiar with the code base.

EDIT2: I've taken a look, but I got some fucky stuff going on with my distro, so can't build. I'm going to take the cheap route and just install the newer version. Given the size of the download and my shitty internet, this is going to take a while. I'll come back to this. I have a fair idea of how to implement this to fix the issue of upgrades not being taken into account as well as to implement starting HP and percentage based values.

However, I'm thinking it'd be best to use a different attribute for percentage values. My opinion on this has changed since I first created this feature request. I no longer like the idea of one attribute doing two things.

132
Closed feature requests / Re: health bars (old topic relaunch!)
« on: 18 July 2014, 00:19:28 »
I think that health bars would be better off as a *player* option, not a mod option.

However, setting the height may be an issue. One solution is to always display the health bar above the height. So if the unit's height is correctly configured, a health bar should always be visible (although it may be too high). This would mean that health bars could be enabled by the player to work with existing mods. I'm assuming, however, that the health bar is an actual bar.

The selection circle *should* work too. As far as I know, the majority of units are appropriately sized so that they won't overlap with the selection circle, and using the selection circle won't have issues with height. Only problem is that using the selection circle as a health bar means removing the means of figuring out which units are selected. Thus, I think we should use *just* the actual bar, and use the selection circle purely to show that something is selected.

I also think that the health bar display options should be toggleable by a hotkey (switching between the display modes that Titi mentioned). Thus, we can quickly turn the health bars on and off in real time.

133
Mods / Re: What kind of main building for barillion bugs?
« on: 25 June 2014, 04:30:52 »
Titi, have you played Mass Effect (and if you haven't, you should). The main enemy in the series is a race of sentient machines called "Reapers". Their capital ship has a very insectoid look. As well, the ships can land on planets and walk. Presumably we wouldn't want the main building to move, but they could very much just plant themselves into the ground. In fact, a really cool build animation would be to have the builder place a beacon at the location where the ship would land, and near the end of the animation, a ship comes down from space and implants itself in the earth.

Details about reapers

Images: [1] [2] [3] [4]

134
Mandate Engine / Re: Mandate Permanent Cancellation
« on: 23 June 2014, 10:24:15 »
Anyways, Omega, feel free to close this forum.
It's easier to leave the forum as is for now, but it can be archived immediately if desired. At any rate, I'll keep a close watch to make sure that nothing gets nasty on this board.

135
MegaGlest / Re: Particles.
« on: 27 May 2014, 04:34:33 »
Is there a way to attach a particle system to a projectile wholesale?, fx i have a particle effect i want to attach to a projectile model.

What do you mean? Attacks can currently have a project and particle. The same XML that defines the model can also have a particle. In fact, most projectile models have accompanying particles. See https://docs.megaglest.org/XML/Projectile_Particle

Also what are the current limitations of the particle system?.

It'd be easier to answer what the system can do rather than what it can't. There's a lot it can do. Making complicated shapes, however, can be difficult (the Annex mod has some nice solutions).

As far as I know, there's still no way to track particles towards the target (ie, change direction to adjust for moving targets). There's no way to differentiate between starting and ending offsets or the direction that the projectile goes (so no "draining effects" of having particles fly from the target to the source).

Lightning effects are difficult. No way to create that ricketing, semi-random arcing effect that electricity has.

No "billboard" support. Billboards are static images that always face the user. While particles can come close to them if luminance is on, I don't believe they can fully replicate how most game engines treat billboards. Particularly useful if used as sprites (rapidly switching through a series of 2D images to create an animation). Could be useful for creating complicated graphics that the current particles can't replicate, but also difficult because of their 2D nature.

As an aside, I mostly drew these limitations from the features that GAE had.

136
I see what you are getting at John.d.h But really for getting any GOOD and great stuff done we need to realise that mods are going to consist of more people and teamwork, and really why do the guy who starts the project needs to know how to model?.
But they aren't. Most mods are created by a single, driven person. Sometimes there's occasional contributions by others, but most modders are on their own. Dark Magic was the only big team attempt that I know of which succeeded. The attempt at a MegaPack revival was a failure.

Unless you're willing to employ people, that is.

137
Im not sure this is legal, otherwise we would see many games with Star Wars models.
Well, it would be in violation of Lucasfilm's copyright. However, the way copyright law works is that the rights holder must send a cease and desist to the alleged violator. What that basically means is you must take down the work and cease further work. Do that and you won't see the inside of a court room. Ignore the C&D and you may find yourself at the wrong end of a lawsuit.

Granted, that means that the rights holder must notice your work and care. Unlike trademarks, copyright law doesn't *have* to be enforced ("Star Wars" is trademarked, the unique representation of art, plots, etc are copyrighted).

Given how much fan work there is related to Star Wars, you could quite possibly create a Star Wars mod and get away with it. But there's a risk of getting a C&D and having your work be for nothing.

On one hand, there's been numerous larger projects that have (still) evaded C&Ds. For example, I'm currently playing Pokemon Zeta/Omicron, a very well designed Pokemon fan-made game that's over a year in progress and has tens of thousands of players. On the other hand, there's been some very high profile games that were taken down due to C&Ds. For example, I'm still upset that Square Enix shut down a fan-made Chrono Trigger game (especially since SE has shown no interest in remaking a series that so many fans want).

But anyway, MattConn, if you want to see this made, you'll probably have to do so yourself. I strongly encourage you to check out our wiki for documentation on how to make a mod. Start slow. Perhaps with retextures of one of the MegaPack factions. Learn how the mods work and some basic image editing. Then when you get better, you can start making your own models to really set the mod apart (and make it look like actual star wars and not just another retextured mod).

Good luck.

138
Maps, tilesets and scenarios / Re: New scenario
« on: 7 May 2014, 07:07:19 »
I dunno exactly how GAE and MG differ in LUA, but shouldn't this just be like one command in LUA? If spearman dies, you lose? If summoner and priest die, you win. Okay, so like two commands.
Well, you'd also have to create the various other units (presumably there's more than just the team captains) and find some way to put your captain at risk (Storming does this by making the summoner an allied player and giving her move commands, so you can't control her; a better, but much harder approach would be using attack boosts to counter negative HP regen, ensuring that the captain must be kept close to the other units).

For a beginner, this should be work for an evening, including learning and potential debugging time. Once learning is out of the way, though, you could churn this out in about 10 minutes.

139
Mods / Re: Lord of the Rings Textures
« on: 6 May 2014, 16:21:23 »
What I meant in the limit was a collective limit on certain units (nine archers, horsemen, and swordsmen combined
Create a custom resource that is provided to the factions on startup, and require that all of these units use one of that resource. Since there's no other way to obtain the resource, it effectively ensures that you cannot make more units than the provided resource's quantity (eg, give 9 of that resource and you can't make more than 9 units that need the resource).

Set <type value="static"> to ensure that you will get the resource back when units die, and consider using <display value="false"/> so that the resource won't appear in the HUD (optional). See: http://docs.megaglest.org/XML/Resource

140
Mods / Re: Lord of the Rings Textures
« on: 6 May 2014, 05:04:11 »
if it would be possible to make a limit on several units

Yup, use <max-unit-count value="10" /> (etc). See the Wiki: http://docs.megaglest.org/XML/Unit

making a radial attack that costs the health of the unit
Use an attack boost to apply some negative HP effect to the unit when they use the attack. Attack boosts are applied to skills and can be thought of as "extra effects".

141
Feature requests / Re: Schemas for multiplayer
« on: 29 April 2014, 13:49:18 »
The map format would probably have to be changed (or additional information tied with maps in a separate file) in order to be able to filter by "x vs y" style maps (since maps don't contain this information).

142
General discussion / Re: Mods install problems
« on: 27 April 2014, 22:08:50 »
You're not really giving much to go on. Version? How did you install? What do you mean by "other ones not"? Do you get an error or something?

143
Closed feature requests / Re: Select multiple buildings at once
« on: 8 April 2014, 22:34:04 »
Multiple selection is specifically disabled for buildings because it's usually used to select units via drag and drop, and if you also selected buildings, you wouldn't be able to tell your units to move (as they lack a common move skill).

I'm going by memory here and my memory is a bit spotty, but if I recall correctly, buildings are identified purely by skills. In particular, buildings don't have a move skill. I think that's the only way buildings are identified.

In the past, this identification as a building was all that was needed for determining if you had to kill that unit to win the game. That is, you win when all buildings are dead, not all units. This changed when MG introduced `count-in-victory-conditions`, which overrides this (docs).

144
Mods / Re: Terra Centauri: Last Stand
« on: 5 April 2014, 06:44:21 »
I dont fully understand how it works, but from what I hear it is possible to release open source games to Steam. I'm still weighing all my options so i cant say for sure what system i pan on using.

Steam Greenlight is where indy games must be submitted. The gist of it is that it's an approval system for literally "greenlighting" your game to appear in Steam (although it's imperfect, judging from some of the crap that gets through). It does not restrict open source games from being greenlit, and a small number of open source games have appeared in Steam. Here's an example.

Steam provides a major source of visibility, but it also has disadvantages. You need to reach some level of popularity to pass greenlight (based on user votes) and there's a one-time $100 fee to prevent spam (although that goes to charity).

I don't hear much about how pricing works, but I'm under the impression that you don't get full control over pricing your game. And naturally, Valve takes a small cut of the revenue.

At any rate, for an indy game, you can't depend on Steam being the only point of distribution, since you'd want to be able to distribute your game while it's still in greenlight. There's no guarantee of passing greenlight -- although it's fairly lax from what I've seen. It's also a somewhat slow process. Finally, games that you can already play do better in greenlight than early concepts (which are allowed).

145
Oh. Haha.

146
That could be very interesting. We could modify the values returned by using conditionals and such. However, I don't think this provides much difference unless an API is also provided to allow access to data like the player type (then mega CPUs could be given units with higher stats), map size, scenario name (if any; would allow the same faction to work differently in a scenario), etc.

It would create a bit of overhead, though, as we'd have to run a JavaScript engine when loading everything in the beginning, which I imagine would be far slower than parsing a static file.

147
Closed feature requests / Re: Looting
« on: 25 March 2014, 22:15:49 »
Good idea. However, the use of percentage signs is very inconsistent with the rest of the XMLs. Rather, we should be using a probability (ie, a number between 0.0 and 1.0) to represent percentages.

To do so in a reasonable manner, we'd need an additional parameter. Probably separate parameters for absolute numbers vs percentages.

Eg,

Code: [Select]
<!-- Get 50 children's tears and the player who just lost their unit loses 50 -->
<resource name="children's_tears" amount="50" loss="50" />

<!-- Get 500% of the faction's stock of printer_ink, but they only actually lose 50% of their stock -->
<!-- If this was real life, you'd be a billionaire overnight. This stuff's like unicorn blood -->
<resource name="printer_ink" amount-percentage="5.0" loss-percentage="0.5" />

The last example is slightly different from your proposal. Instead of loss-percentage defining how much the opponent loses as a percentage of what we took, it defines how much the opponent loses as a percentage of their total. Thus, if we want to take 5% of the opponents resource and they lose all of that 5%, we'd simply set amount-percentage and loss-percentage both to be 0.05.

148
Feature requests / Re: map XML
« on: 22 March 2014, 02:34:22 »

149
Feature requests / Re: map XML
« on: 19 March 2014, 22:01:10 »
Hmm, an XML format does have some advantages over the GBM/MGM format, particularly in extensibility.

I'd rather we use numbers than names, as the actual objects, resources, and surfaces are tileset and techtree dependent.

However, XMLs are huge because they add a lot of fluff. How we either:

  • Use JSON -- it's also a human readable format with tools in pretty much every language, but it's much more compact (XML is super verbose) and the use of JSON arrays is ideal for handling a matrix of data, which is what the map format really is. I'm not really sure about C++ libraries, but in my experience in using the GSON Java library, it's far easier to read and write than XML.
  • or standardize some compression wrapper. That is, set some type of compression format that can be used to compress the map. For example, we already support 7z in MG, so we could put the map in a 7z archive (with the map file having the same name as the archive). The map is tiny and only has to be unpacked once, so this should be a mostly negligible overhead. Should result in smaller sizes than the current binary format. This could be combined with using JSON (and would get better file size reduction, anyway).

Sample of how this could look in the JSON format:

Code: [Select]
{
"headerInfo": "someInfo",
"moreInfo": "foo",
"aBoolean": true,
"aNumber": 12,
[
[
{
"altitude": 10,
"surface": 1,
"resource": 1
},
{
"altitude": 0,
"surface": 4
}
],
[
{
"altitude": 10,
"surface": 1,
"resource": 1
},
{
"altitude": 0,
"surface": 4
}
]
]
}

As we can see, we have a top level object (the map), some data for that (header stuff like authors, etc), and then an array of rows, which are arrays of cells. Whitespace is optional and included only for readability.

I like the format, this will add more flexibility when the Lua scripting is integrated in the future,
You could make gold change places in maps or making labyrinth from set of arrays and much more.
This isn't true. Adding an XML (or whatever) version will not change the game. After all, the GBM/MGM format currently represents this same information (just in a format that is difficult to read -- but not that difficult for computers -- and human readability doesn't mean much given that you'll use a map editor for any serious map creation). I'm not sure what limitations are currently preventing lua from changing the map in-game (although it's a long time feature request), but it's not the map format.

The only advantages I can think of is that textual formats like this handle unnecessary data well (which is good for adding new features -- avoids breaking older versions) and possibly making parsers easier (but well documented binary formats aren't that much harder to make). I'm not sure about XML, since it doesn't correlate well with objects, but the JSON format can sometimes be converted directly to objects, which makes it far, far easier to read files in. In fact, creating a reader for the above JSON format is so easy it's laughable (create an object template, let JSON do the hard work, and then iterate through your newly populated arrays).

150
Forum discussion / Re: Notifications for edited posts
« on: 9 March 2014, 21:38:43 »
And to elaborate, the reason we prefer that you edit recent posts instead of double posting is that it prevents a large number of posts by a single user merely for the purpose of corrections and extensions. That is precisely the use case that editing your post is meant to solve, so prefer that users do so (and will often merge double posts when users make them).

Pages: 1 2 3 4 5 [6] 7 8 9 10 ... 246
anything