Arcen Games

General Category => AI War II => Topic started by: chemical_art on November 02, 2016, 09:51:38 am

Title: What features to cut for round 2
Post by: chemical_art on November 02, 2016, 09:51:38 am
Chris has been asking for this on the KS but I figured we could discuss it here as well: What features would you cut as part of the reduced budget for AIW 2? Keep in mind that features must be cut but it is possible they can come back through other means.

As for me, I would cut the multiple campaigns. There should be one campaign, although that campaign can have branches. Each campaign added multiplies the time it takes to get them all right, and with such a small staff it means, by default, the attention is split. As a result of this split time not only does it take longer to develop but the quality of the work drops. Sticking with one campaign prevents fragmentation and previous experiments like this have just not worked. I imagine all the work that went into TLF to make three game modes. In the process the quality dropped as a whole. The two new game modes simply are not nearly as polished as the time put into them would expect.
Title: Re: What features to cut for round 2
Post by: Draco18s on November 02, 2016, 11:13:21 am
Player Race Choice.

I'm not sure this feature is meaningful enough (there've been a few comments about "how does this actually play differently?" with the answer being "well....") for the time investment to be worthwhile at this juncture.
Title: Re: What features to cut for round 2
Post by: kasnavada on November 02, 2016, 01:20:34 pm
Not to mention that... as long as the player start and build option can be modded, making the actual race is irrelevant.
Title: Re: What features to cut for round 2
Post by: z99-_ on November 02, 2016, 01:53:05 pm
I don't think playing as the spire should be cut. From my understanding, the spire race would just be different, stronger units with more AI response to compensate. In my mind, it seems like that would share 99% of the code with the basic human faction, so the coding shouldn't be a time sink; the graphics would all be different, but in the KS campaign, Chris wrote "Design and art get done before programming, which gets done before balance and QA." I don't know if that's still true with the reorganization, but if it is, the graphics wouldn't be a bottleneck either. That leaves the balance testing, which seems like it should be pretty simple and straightforward - once again, with my current understanding, it would just be changing stats in XML, which could even be done by the alpha and beta testers. All that for one of the main tangible improvements over AIWC that I have seen a significant number of people on the KS express interest in, it seems like it should stay.

Of course, something has to be cut. I would just suggest considering the cost to add in as well as the benefit to add in. But even that is difficult to determine. For instance, I was thinking that the solar systems thing could be dropped, but when looking at the KS page that lists how far along in development different parts are, it says that is already in progress. In fact, looking at everything listed there, it seems that most of the candy ideas that were new to AIWII are already partly coded, while the core things like UI improvements are only "designed", which I take to mean 'we haven't started doing this yet'.

TLDR:     rock < Arcen < hard place, as usual :(
Title: Re: What features to cut for round 2
Post by: Tridus on November 02, 2016, 02:28:45 pm
Without knowing what the budgets for individual things are, it's hard to have any real discussion on what should be cut. Although the impression I got was that it was "most of the things".
Title: Re: What features to cut for round 2
Post by: Aklyon on November 02, 2016, 02:35:41 pm
Without knowing what the budgets for individual things are, it's hard to have any real discussion on what should be cut. Although the impression I got was that it was "most of the things".
I'd really like to keep the play as spire part, even though its like Tridus said. it sounded like the most ready of the alternate player races.
Title: Re: What features to cut for round 2
Post by: garion333 on November 02, 2016, 02:56:45 pm
If we're talking about a paired down AI War 2, alternative races seem like something better explored in expansions than in the base game.
Title: Re: What features to cut for round 2
Post by: Tridus on November 02, 2016, 03:31:57 pm
Without knowing what the budgets for individual things are, it's hard to have any real discussion on what should be cut. Although the impression I got was that it was "most of the things".
I'd really like to keep the play as spire part, even though its like Tridus said. it sounded like the most ready of the alternate player races.

Me too. I mentioned that in a KS comment. It's the thing I'm most excited for, and if you chop everything I'm excited for, then as a parent on a budget, I have to re-evaluate my pledge amount. It's hard to explain to my wife why I'm pledging significant money for something I wouldn't actually play, you know?
Title: Re: What features to cut for round 2
Post by: chemical_art on November 02, 2016, 03:33:35 pm
One idea I just had:

There is no reason you can only have one race yet they be the spire. Make the spire campaign the starting one. It would neatly present itself as why you should play AIW 2 instead of one. You could then focus on making videos, etc showcasing how cool they are.
Title: Re: What features to cut for round 2
Post by: Apathetic on November 02, 2016, 03:35:06 pm
I can't say what I'd suggest cutting at this point.  Without what amounts to a list of features / implementation time it's very hard to list the features that I can do without in a game.  Having only glanced at the design document, I can't say I'm in a position to list the features that I don't feel are necessary for a game and take significant implementation time.

The main things I'm looking forward to in the remake are : new map shapes due to Solar Systems, and playing as the Spire.
Title: Re: What features to cut for round 2
Post by: z99-_ on November 02, 2016, 03:55:58 pm
Derelicts and ship husks are both listed as 'designed' on the KS page, so I guess those could go without any wasted effort. Personally, I thought they were really cool additions, but I don't see them as being a marquee feature/ advertising point that could get additional backers.

From what I recall, people were lukewarm on the tech upgrade system. It shows up multiple places on the Feature Status table, some of which are listed as ongoing, while others are listed as designed, so that may save a fair bit of time without crushing anybody's dreams.
Title: Re: What features to cut for round 2
Post by: WolfWhiteFire on November 02, 2016, 07:48:39 pm
Zenith seems like pretty much a slightly different human faction to what little I know about it, so that could probably be initially cut. I feel Spire and Humans both need to stay, humans for the default AI War experience, Spire due to how many people seem excited for them and for offering a completely different play style. Solar systems maybe cut, but from what little I know they aren't all that more complicated than planets. It looked like just a circle around planets which have a special relationship with each other. I wish I could say what should probably be cut (other than 3D which it sounds like will most likely be cut anyway), but I doubt anyone here really knows how much time and effort would go into each mechanic. The changing AI personalities and per planet personalities seems like it might be expensive and time-consuming but I am not really sure.
Title: Re: What features to cut for round 2
Post by: Sounds on November 02, 2016, 08:03:13 pm
Chris has been asking for this on the KS but I figured we could discuss it here as well: What features would you cut as part of the reduced budget for AIW 2? Keep in mind that features must be cut but it is possible they can come back through other means.

As for me, I would cut the multiple campaigns. There should be one campaign, although that campaign can have branches. Each campaign added multiplies the time it takes to get them all right, and with such a small staff it means, by default, the attention is split. As a result of this split time not only does it take longer to develop but the quality of the work drops. Sticking with one campaign prevents fragmentation and previous experiments like this have just not worked. I imagine all the work that went into TLF to make three game modes. In the process the quality dropped as a whole. The two new game modes simply are not nearly as polished as the time put into them would expect.

I was going to comment after the first KS finished, but seeing this thread I thought I'd just add this:

Focus on one campaign but also don't do any others as stretch goals. Whilst additional campaigns sounds great, I suspect the amount of effort in time and cost would be drastically underestimated.

Title: Re: What features to cut for round 2
Post by: iob on November 02, 2016, 08:22:47 pm
First, we need to see how big the new ks will be. My guess it will be arround 50-100k usd. If it's really 2 guys inventing the game and they ask for 2500k bucks per month each, that would be only barely more than 10 months of development, which isn't much.

I would cut out complex stuff and too much units and focus on ui and core gameplay. Rest can be added with expansions if its a success.


Also, I read that "designed" is ready to go. No it's not. The feature has neither been implemented or playtested. Designed just means that the feature has been thought through and makes sense on paper - imho.

Just as a designed building isn't there yet...
Title: Re: What features to cut for round 2
Post by: Tridus on November 03, 2016, 07:57:57 am
Chris said that the new amount would be something that would fund in a couple of days based on how this KS went. That means < $50,000, as it took five days to get there this time around. If it's the one day amount, then it's more like $25,000.
Title: Re: What features to cut for round 2
Post by: kasnavada on November 03, 2016, 08:57:43 am
Actually, the only feature I'd want in AI War II compared to AI War 1 would be moddability. Everything else can go.
Title: Re: What features to cut for round 2
Post by: Tridus on November 03, 2016, 10:23:12 am
Actually, the only feature I'd want in AI War II compared to AI War 1 would be moddability. Everything else can go.

But without a way to load assemblies or script, modders can't do things like add mechanics. XML only mods let you use what's already built, but that's it. So if what's there to use is itself severely limited, modders are heavily constrained in what they can do.

So yes, we've got moddability, but on a slim budget for built in mechanics to utilize, it's the diet coke of moddability.
Title: Re: What features to cut for round 2
Post by: kasnavada on November 03, 2016, 10:59:09 am
::)
Who said I didn't include that into moddability ?

In any case, just being able to replace existing buildings, ships, and messing with the "AI planet load-out generator" and keeping existing mechanics would be the step I'm most interested in. Changing mechanics would be a bonus - but yes, something I'd include in moddability, if possible. So I'm stating that. That said, only my opinion.

Title: Re: What features to cut for round 2
Post by: Draco18s on November 03, 2016, 11:43:44 am
::)
Who said I didn't include that into moddability ?

The problem is that making an API of that manner in a C# dll is not easy.
(And the player's ability to compile their own dll)
Title: Re: What features to cut for round 2
Post by: Mánagarmr on November 03, 2016, 12:23:23 pm
Player Race Choice.

I'm not sure this feature is meaningful enough (there've been a few comments about "how does this actually play differently?" with the answer being "well....") for the time investment to be worthwhile at this juncture.
How about not? This is the ONE key feature that really stands out among all the "Euhm, yeah so we upped performance and slapped some paint on the game".
Title: Re: What features to cut for round 2
Post by: kasnavada on November 03, 2016, 12:32:26 pm
::)
Who said I didn't include that into moddability ?

The problem is that making an API of that manner in a C# dll is not easy.
(And the player's ability to compile their own dll)

What are you trying to say here exactly ?
Title: Re: What features to cut for round 2
Post by: chemical_art on November 03, 2016, 02:45:49 pm
Player Race Choice.

I'm not sure this feature is meaningful enough (there've been a few comments about "how does this actually play differently?" with the answer being "well....") for the time investment to be worthwhile at this juncture.
How about not? This is the ONE key feature that really stands out among all the "Euhm, yeah so we upped performance and slapped some paint on the game".

It is also perhaps the most expensive of the options. It requires among most time to make of all the features. For it to be a meaningful difference and not just a cosmetic one then the AI needs a whole different set of power curves to make the game fun. Using similar resources to this one, it took many years and many iterations to get the AI 1 to the quality it is today. This new game will have less then a year. It will not be easy to get it to the expected quality level for one game. It will be impossible for two.
Title: Re: What features to cut for round 2
Post by: Tridus on November 03, 2016, 04:04:36 pm
Player Race Choice.

I'm not sure this feature is meaningful enough (there've been a few comments about "how does this actually play differently?" with the answer being "well....") for the time investment to be worthwhile at this juncture.
How about not? This is the ONE key feature that really stands out among all the "Euhm, yeah so we upped performance and slapped some paint on the game".

It is also perhaps the most expensive of the options. It requires among most time to make of all the features. For it to be a meaningful difference and not just a cosmetic one then the AI needs a whole different set of power curves to make the game fun. Using similar resources to this one, it took many years and many iterations to get the AI 1 to the quality it is today. This new game will have less then a year. It will not be easy to get it to the expected quality level for one game. It will be impossible for two.

AI 1 at 1.0 wasn't the quality it was at today, either. Nobody would be shocked if balance tweaks are required at 1.0.

You need something new to sell. "It's like AI War was back in 2009 only with better performance" is somewhat less than an exciting sales pitch.
Title: Re: What features to cut for round 2
Post by: kasnavada on November 03, 2016, 04:42:02 pm
Player Race Choice.

I'm not sure this feature is meaningful enough (there've been a few comments about "how does this actually play differently?" with the answer being "well....") for the time investment to be worthwhile at this juncture.
How about not? This is the ONE key feature that really stands out among all the "Euhm, yeah so we upped performance and slapped some paint on the game".

It is also perhaps the most expensive of the options. It requires among most time to make of all the features. For it to be a meaningful difference and not just a cosmetic one then the AI needs a whole different set of power curves to make the game fun. Using similar resources to this one, it took many years and many iterations to get the AI 1 to the quality it is today. This new game will have less then a year. It will not be easy to get it to the expected quality level for one game. It will be impossible for two.

Depends how the campaign's done. If the campaign's moddable, adding 5 campaign's easy. It could even be out-sourced to volunteers on the forum.
If it's hard-coded, there's little point making AI War II. Let's make an expansion to AI War classic.

Same for units.
Same for races.

Thing is cutting additional races, moddables units, and so on, is cutting the new visible playable features. In short, cutting what people want out of the game. It's also cutting on content that actually CAN be outsourced to volunteers on the forum for free.

What needs to be cut down ain't those features, it's the paint. Everything that's needed, but won't show.
Better perf ? There was perf issues with the current ship quantities ?
3d ? What was the problem with 2d ?
Squads ? Seems like they're here to solve issues with large numbers of units.

Those are in because of the "let's put 200000 ships moving at the same time in the game" objective. I see this objective as requiring a lot of work, and it's not what gets people excited from what I see in the KS comment thread. So, cutting part of it is in order.

Minor factions ? Those sound cool, but I don't see people really being excited about it, especially since next to no one seems to know how they would work. So, cut.

AI moving to take territory ? Same as minor faction.

Ummm. What else was new. Solar systems ? Neat, but not essential.
A new soundtrack ? Could be cut, I mean there's enough music from the previous games if short on money.
Title: Re: What features to cut for round 2
Post by: Sounds on November 03, 2016, 05:00:49 pm
Actually, the only feature I'd want in AI War II compared to AI War 1 would be moddability. Everything else can go.

I'm not sure what the collective wants of kickstarter backers are, but I'd be reluctant to back another Kickstarter at the level I did for the current one if mod support is the only new feature between the two. Having it seems more like a stretch goal. I wouldn't want precious cycles going into this type of thing at the expense of the core game.

Having said that; what type of mod support would you be interested in? At one stage I wanted to tweak the AI and overhaul some of the components of the UI to suit my own preferences. At present just having the ability to create new ship types and tactics would be awesome and I'd be curious to see what some of the more hard core AI players/modders would come up with. Other than that I can't see a need.
Title: Re: What features to cut for round 2
Post by: Draco18s on November 03, 2016, 06:04:57 pm
I'd probably also cut several of the early bird tiers at the higher levels.  There's like four of them.  At one point I was pretty sure I saw backing split between the EB and the regular at a near 1:1 ratio.
Title: Re: What features to cut for round 2
Post by: chemical_art on November 03, 2016, 06:33:32 pm
I'd probably also cut several of the early bird tiers at the higher levels.  There's like four of them.  At one point I was pretty sure I saw backing split between the EB and the regular at a near 1:1 ratio.

Just as a personal example I doubled my input on day 1 to ensure I could secure an early bird special because they went so fast. Without that incentive I may not have decide to increase my pledge.
Title: Re: What features to cut for round 2
Post by: Tridus on November 03, 2016, 06:51:28 pm
::)
Who said I didn't include that into moddability ?

The problem is that making an API of that manner in a C# dll is not easy.
(And the player's ability to compile their own dll)

That any level of modding beyond "add new ships that do the same thing existing ships can do, only with different names/stats" requires an API that isn't likely to exist. The modding that was proposed originally was relatively modest in scale.

What are you trying to say here exactly ?
Title: Re: What features to cut for round 2
Post by: Tridus on November 03, 2016, 07:14:17 pm
Depends how the campaign's done. If the campaign's moddable, adding 5 campaign's easy. It could even be out-sourced to volunteers on the forum.

If it's hard-coded, there's little point making AI War II. Let's make an expansion to AI War classic.

Same for units.
Same for races.

Units were going to be moddable and probably still will be in some way, since just loading the data from XML makes that fairly easy. But in terms of mod management tools, who knows? Playable races have to mechanically exist before they can be modded, which is part of why the talk about cutting them bothers me. They talked about "moddable tutorials", but never a full campaign, IIRC.

Quote
Thing is cutting additional races, moddables units, and so on, is cutting the new visible playable features. In short, cutting what people want out of the game. It's also cutting on content that actually CAN be outsourced to volunteers on the forum for free.

Agreed.

Quote
Better perf ? There was perf issues with the current ship quantities ?

Yes.  Play Fallen Spire on higher difficulties and watch the AI spawn so much stuff that the game can turn into a slideshow on an i7.

Quote
3d ? What was the problem with 2d ?

Ever tried playing Classic at 4k resolution? It doesn't work very well. 2d sprites don't scale, 3d graphics do. They also perform better, as modern hardware is designed around pushing polygons at insanely fast speeds. The game will still play in 2d overhead view, but internally it's doing things in 3d.

Quote
Squads ? Seems like they're here to solve issues with large numbers of units.

Unless "large numbers of units" are going away, squads are solving a real problem.

Quote
Those are in because of the "let's put 200000 ships moving at the same time in the game" objective. I see this objective as requiring a lot of work, and it's not what gets people excited from what I see in the KS comment thread. So, cutting part of it is in order.

People reacted badly to the mere hint of having ship scales smaller than what Classic has. Squads are the thing that let AIW2 keep that scale without the performance problems. Cut them, and either the scale has to get cut (which was met with hostility) or the performance problems stay (why do we need a sequel if it doesn't improve that?).

Quote
Minor factions ? Those sound cool, but I don't see people really being excited about it, especially since next to no one seems to know how they would work. So, cut.

Yep. Background factions were already cut. Minor factions can join them.

Quote
A new soundtrack ? Could be cut, I mean there's enough music from the previous games if short on money.

That's actually a problem, as it turns out. The previous game's music is licensed on a royalty basis. Using that music in AIW2 means paying royalties on every copy sold, which significantly eats into the amount of money from the KS. The arrangement on music going forward is a purchase one so it avoids that problem, but that isn't an option for Classic's soundtrack.
Title: Re: What features to cut for round 2
Post by: Cyborg on November 03, 2016, 07:40:51 pm
Playable races sounds like expansion material to me. Moddability is really key to this sequel.
Title: Re: What features to cut for round 2
Post by: Tridus on November 03, 2016, 07:46:24 pm
Clearly I disagree with some other folks here on just how much of a selling point XML only modding is.
Title: Re: What features to cut for round 2
Post by: chemical_art on November 03, 2016, 07:53:53 pm


That's actually a problem, as it turns out. The previous game's music is licensed on a royalty basis. Using that music in AIW2 means paying royalties on every copy sold, which significantly eats into the amount of money from the KS. The arrangement on music going forward is a purchase one so it avoids that problem, but that isn't an option for Classic's soundtrack.

I think using the first group of music is almost a necessity with a revised royalty system. Chris stated that the tier for adding music, 5k, was virtually all for making the music after fees. Kickstarter charges 6% fees, chris said a stretch coal would cost 12%. So that comes out for somewhere around 4.5k a song. That means given the current level of funding one song costs 5% of the budget. That is just not sustainable. Either a new royalty system is in place or a new source of music is necessary.
Title: Re: What features to cut for round 2
Post by: Tridus on November 03, 2016, 08:02:10 pm
Ah, yeah. That is definitely a problem.
Title: Re: What features to cut for round 2
Post by: kasnavada on November 04, 2016, 02:39:58 am
@music, then again no music at all is kind of an issue. I would have thought that just having to pay for royalties for existing songs would cost less than making a new song (and paying the royalties), which is what was planned AFAIK (making new songs). So, while it's still a cost, it's less of a cost. That said, if the contract ain't like that, well. Sorry for the suggestion.


Quote
    Better perf ? There was perf issues with the current ship quantities ?
Yes.  Play Fallen Spire on higher difficulties and watch the AI spawn so much stuff that the game can turn into a slideshow on an i7.
Quote
    3d ? What was the problem with 2d ?
Ever tried playing Classic at 4k resolution? It doesn't work very well. 2d sprites don't scale, 3d graphics do. They also perform better, as modern hardware is designed around pushing polygons at insanely fast speeds. The game will still play in 2d overhead view, but internally it's doing things in 3d.
Quote
    Squads ? Seems like they're here to solve issues with large numbers of units.
Unless "large numbers of units" are going away, squads are solving a real problem.
Quote
    Those are in because of the "let's put 200000 ships moving at the same time in the game" objective. I see this objective as requiring a lot of work, and it's not what gets people excited from what I see in the KS comment thread. So, cutting part of it is in order.
People reacted badly to the mere hint of having ship scales smaller than what Classic has. Squads are the thing that let AIW2 keep that scale without the performance problems. Cut them, and either the scale has to get cut (which was met with hostility) or the performance problems stay (why do we need a sequel if it doesn't improve that?).

Please... the Spire campaign ain't a good argument. It's not planned to be in the sequel. By the time that it makes it back, IF, it needs to make it back, maybe modifications are needed, but for the base game ? Apart from there, I've not had perf issues at all and my computer's 4 years old.

Second, I'm being misunderstood here. One of the sequel's goal was to increase the number of units - and modifications have to be done to account for that. I don't suggest to reduce the number of units compared to the first game, just to reduce AI War II's goals it so perf issues don't come too much.

Third, the point about 3d is that all has to be recoded - even if it's more efficient. 2d does not have this issue. Granted, the existing code, from what is said, needs some rewrites... but a complete rewrite ? That said, maybe the point is moot because it's already in the prototype that the trailer's got images from. Another point which saddens me a lot though, it's way more easy for modders to make 2d sprites than 3d models.

Last, about 4k screens, other companies manage to have sprite scale and UI correctly on 4k screens. Why wouldn't Arcen be able to do in on a new game ?

Quote
They talked about "moddable tutorials", but never a full campaign, IIRC.
As far as I've known the system that made the tutorial was planned to be flexible enough to make campaigns. That said, it's probably a complex feature. I'm not sure about cut or not, AI War kind of need better tutorials in any case.

Title: Re: What features to cut for round 2
Post by: Tridus on November 04, 2016, 07:47:21 am
Please... the Spire campaign ain't a good argument. It's not planned to be in the sequel. By the time that it makes it back, IF, it needs to make it back, maybe modifications are needed, but for the base game ? Apart from there, I've not had perf issues at all and my computer's 4 years old.

You can't build a game now not worried about performance, then just get performance later. That's not how software development works.

Also, it wasn't even necessary to run FS to get those issues. People got them in normal play too. FS just makes it easier, and since there's a Spire campaigned planned with a similar play style, it's going to come up again.

Quote
Second, I'm being misunderstood here. One of the sequel's goal was to increase the number of units - and modifications have to be done to account for that. I don't suggest to reduce the number of units compared to the first game, just to reduce AI War II's goals it so perf issues don't come too much.

Perf issues were a problem with the existing number of units. No increase is necessary to have problems. A decrease isn't planned, so the problem has to be dealt with. If your'e not doing that, why bother making AI War 2 at all? It's a lot cheaper to make an expansion to Classic.

Quote
Third, the point about 3d is that all has to be recoded - even if it's more efficient. 2d does not have this issue. Granted, the existing code, from what is said, needs some rewrites... but a complete rewrite ? That said, maybe the point is moot because it's already in the prototype that the trailer's got images from. Another point which saddens me a lot though, it's way more easy for modders to make 2d sprites than 3d models.

They're changing Unity versions drastically. Even keeping it 2d, it needs to be rewritten to take advantage of that and get things like a properly scaling UI. New artwork has to be done anyway.

Quote
Last, about 4k screens, other companies manage to have sprite scale and UI correctly on 4k screens. Why wouldn't Arcen be able to do in on a new game ?

Having sprites that look good on a 4k screen and also look good on a lame 720p laptop screen is a much bigger art job than just making low res sprites is. 3d eliminates the problem because being able to scale it up and down is a base function. The hardware will do it for you. You can't take a low res sprite and scale it up to high res without it looking like total crap, which means you need to make high res sprites instead... which take up more memory and are slower to process than 3d graphics.

This is all explained in the design document.
Title: Re: What features to cut for round 2
Post by: Aklyon on November 04, 2016, 08:28:14 am
Oh, talking about performance issues are we?
Multiplayer on low caps. Always turned into a slowdown-fest, even with aggressive threat-dismantling.

Also, modding...relies on people actually making the interesting mods. Modding alone is not an attractive feature, its just 'You can tweak game mechanics'.
Title: Re: What features to cut for round 2
Post by: kasnavada on November 04, 2016, 09:49:45 am
Quote
You can't build a game now not worried about performance, then just get performance later. That's not how software development works.
Quote
Multiplayer on low caps. Always turned into a slowdown-fest, even with aggressive threat-dismantling.
Low-caps are gone too. Multi-homeworld start is stated to be changed. I don't know if it's here to stay, but ships are stated to be in shipyards now, so basically, the game does not have to track thousands of immobile ships everywhere like before. Thing is Chris actively removed most of the perf threats already. The current engine is capable of handling quite a few units, but AI war 2 was stated to be able to handle maybe 10 times more ? I don't think the 10 times multiplications is necessary.

In any case, you've not brought perf issues apart from edge cases which are already removed from the second game. Is there other perf issues in regular plays ? Frankly I ask because with normal caps, without abusing multiple homeworld starts, I never managed had a lag. And, as stated, my computer ain't really new. That said, I might have missed stuff. I didn't exactly try to make the game lag either.

In any case, there will always be limitations to the game performances. What I'm saying is you don't build a 8 lanes double road, and airport and a heliport if the base game requires a dual lane road, because hypothetical future expansions could require them.

@Tridus...
About the rest, again, I don't claim that 2d's more efficient than 3d. Solutions for the problem you're stating have been found by others, so I'm just supposing that things exist, and that Arcen can use them. I supposing (hoping ? Or not ?) that it's more work to redo everything from scratch, than to adapt better taking current recipes into account when making the new engine. That it's explained in the document is one thing, but the document was kind of written to sell us this idea... with a 2-300k budget in mind. It needs re-evaluating IMO - but I'm not claiming that I can say which is better. I'm a dev, but I haven't see Arcen's code. Also, the point might be moot because it's already been quite advanced. So yeah.
Title: Re: What features to cut for round 2
Post by: Aklyon on November 04, 2016, 10:02:39 am
Normal caps multiplayer was an exercise in unnecessarily slow campaigns. 2 people with good-ish computers, 3 people, 3 people and one with a not-that-great computer, high performance profiles, low performance profiles, FS on, FS off, champs/no champs, starting close together, starting split up, did not matter. Always slow by the end of the second session. Singleplayer worked fine but would occasionally lag because of having so many ships.

I'm not really sure how you managed to not ever lag, kasnavada.
Title: Re: What features to cut for round 2
Post by: Draco18s on November 04, 2016, 10:29:58 am
I'd probably also cut several of the early bird tiers at the higher levels.  There's like four of them.  At one point I was pretty sure I saw backing split between the EB and the regular at a near 1:1 ratio.

Just as a personal example I doubled my input on day 1 to ensure I could secure an early bird special because they went so fast. Without that incentive I may not have decide to increase my pledge.

I'm not saying there aren't down sides, but we ended up with A LOT of tiers, which can cause confusion. Also, I was probably wrong in my earlier statement (and stayed the nature thereof).
Title: Re: What features to cut for round 2
Post by: Apathetic on November 04, 2016, 10:34:52 am
I'd be cautious of the main new feature being modability.  Personally, I don't want to rely on people to make the game complete.  I want to have a complete package out of the box, that has compelling reasons to make the switch to the new version.  Having a game that required mods to end up a great deep game I don't think will work.  Having an already great deep game that mods can make better is great.

Depending on required level of effort, it would be interesting if the default campaign was the spire version.
Title: Re: What features to cut for round 2
Post by: NichG on November 04, 2016, 10:47:43 am
I think the key point is, what will sell the game? The ability to retain features and ideas is directly proportional to how much extra funding can be garnered, and that depends not on appealing to existing hardcore fans but rather to appeal to a wider set of strategy gamers.

Modding isn't going to do that, especially not at the stage of a Kickstarter. Modding is good for sustaining interest as a game ages, but it doesn't provide the initial surge (and it can backfire, if people see it as a way to try to get the customers to make most of the content and promote the game for cheap). I don't think 3D will be seen as a selling point either - at best, it might prevent negative impressions from people who don't like 2D, but it's not going to sell the game on its own. Large swarms of ships might pull on a certain segment, but its a bit shallow and this kind of game really aims more at deep, so I'm not sure that works as a core feature.

Whatever is cut, there has to be something left in the core of it that says 'this is really what AI War 2 is about, and why it makes sense for you to buy into promises and dreams towards creating a sequel to get this thing, rather than just grabbing AIW1 on sale'.
Title: Re: What features to cut for round 2
Post by: tombik on November 05, 2016, 01:09:08 am
What about cutting off 3D? I know 2D might look too indie to cause any profit, at the same time, AI War is targeting only outlier players who knows what they want. 3D will work only for screenshots mostly with no actual added value, let alone the performance issues. And no, I did not like how Raptor looked, so that might also be a shot in the feet there.
Title: Re: What features to cut for round 2
Post by: Cinth on November 05, 2016, 01:27:32 am
actual added value, let alone the performance issues

The 3-D actually improves the performance of the game dramatically.  There's a whole section in the design doc that pretty much covers that whole explanation.

I did not like how Raptor looked
What about it?  I don't think it was any secret that most of what was used in Raptor was bought form the asset store.
Title: Re: What features to cut for round 2
Post by: tombik on November 05, 2016, 02:01:29 am

The 3-D actually improves the performance of the game dramatically.  There's a whole section in the design doc that pretty much covers that whole explanation.

Did not know that, will take a look then.
Title: Re: What features to cut for round 2
Post by: kasnavada on November 05, 2016, 02:38:31 am
Normal caps multiplayer was an exercise in unnecessarily slow campaigns. 2 people with good-ish computers, 3 people, 3 people and one with a not-that-great computer, high performance profiles, low performance profiles, FS on, FS off, champs/no champs, starting close together, starting split up, did not matter. Always slow by the end of the second session. Singleplayer worked fine but would occasionally lag because of having so many ships.

I'm not really sure how you managed to not ever lag, kasnavada.

Never tried multiplayer much longer than a session, maybe that's that. The people I tried to play with found the start of the game too boring to continue playing.

Modding isn't going to do that, especially not at the stage of a Kickstarter. Modding is good for sustaining interest as a game ages, but it doesn't provide the initial surge (and it can backfire, if people see it as a way to try to get the customers to make most of the content and promote the game for cheap)

That directly contradict reviews of games like Rimworld, X-Com2, Neverwinter Nights, Skyrim... and also, a large part of the new "exciting" features (at least to me) kind of exists with modding being there. Better tutorial (possibly campaign), ships, player races...
Title: Re: What features to cut for round 2
Post by: yllamana on November 05, 2016, 03:57:49 am
I think the core new features could be the new graphics and the hopefully much-improved UI. I know many more people who have wanted to enjoy AI War and found it impenetrable or unenjoyable because of the graphics' and UI's shortcomings than I know people who have managed to have fun with it.

A lot of people think the idea of AI War is really awesome and even own the game because of it, but can't enjoy it. AI War 2 is a chance to address the problems that prevent them from enjoying the first game and hopefully enhance the experience for those who do enjoy it. Even if it adds nothing else, if it can hit the graphics and the UI it should be more than worthwhile.
Title: Re: What features to cut for round 2
Post by: NichG on November 05, 2016, 04:21:36 am
Was going to do a very detailed response, but felt like I was orbiting around the point, so rewriting for another try.

The issue is, if I don't look at this as an Arcen fan, but look at it as a complete outsider, there's a set of things which one might call 'expectations' and a set of things which one might call 'features'. Things like 'the UI is good' or 'there's a good tutorial' or even '3D graphics' aren't features, they're expectations. They're things which if you tell me are absent, I'll have a negative impression, but if you tell me they're present I'm going to think 'so what, every game has to have that, what makes this different?'.

If I'm just checking something out at Steam store, I might not need anything more than having expectations be met for a professional, polished game (if I'm bored, if its on sale, if its a genre I like, etc). But if its a Kickstarter, that's a developer saying 'here's a vision, but I can't afford to make it - this vision will not exist unless I receive support'. If you show me a lot of stuff which meets my expectations, but no revolutionary or radical or risky new features or promises of insights and wonders, well, the natural thing for me to think is 'there's going to be 10 other games like this, probably out on Steam before this KS even finishes, so why should I go out of my way to support this one?'

As an Arcen fan, I'm more likely to think 'well, I know the devs, I know the product line, I trust them to be creative and interesting'. But I don't think that's the right point of view to be taking for aiming a Kickstarter campaign.
Title: Re: What features to cut for round 2
Post by: Tridus on November 05, 2016, 06:50:24 am
That directly contradict reviews of games like Rimworld, X-Com2, Neverwinter Nights, Skyrim... and also, a large part of the new "exciting" features (at least to me) kind of exists with modding being there. Better tutorial (possibly campaign), ships, player races...

You know what those games have in common besides modding? They're fun without any mods. Modding doesn't save a game that nobody wants to play in the first place. It improves on a fun base game.
Title: Re: What features to cut for round 2
Post by: Aklyon on November 05, 2016, 07:43:58 am
That directly contradict reviews of games like Rimworld, X-Com2, Neverwinter Nights, Skyrim... and also, a large part of the new "exciting" features (at least to me) kind of exists with modding being there. Better tutorial (possibly campaign), ships, player races...

You know what those games have in common besides modding? They're fun without any mods. Modding doesn't save a game that nobody wants to play in the first place. It improves on a fun base game.
This is the key point here, modding-wise. Modding can be a key feature, but not the key feature. And with a much smaller budget, we won't have much of those unless people really liked AI War to begin with.
Title: Re: What features to cut for round 2
Post by: chemical_art on November 05, 2016, 09:06:43 am

That directly contradict reviews of games like Rimworld, X-Com2, Neverwinter Nights, Skyrim... and also, a large part of the new "exciting" features (at least to me) kind of exists with modding being there. Better tutorial (possibly campaign), ships, player races...

None of those games were funded by kickstarter. They all had the luxury of years of development or came at a time when the game market was far less competitive.

Apples and Oranges.
Title: Re: What features to cut for round 2
Post by: kasnavada on November 05, 2016, 10:43:00 am
None of those games were funded by kickstarter. They all had the luxury of years of development or came at a time when the game market was far less competitive.
Apples and Oranges.

Errr, sorry, but... What you're stating that modding is a selling point only if:
- it was sold before this very year ?
- only if they games have years of development ?
- only if they're not funded via a KS ?

That's... well. Nothing more to add. I believe I made my point.

As a whole, the "apple or orange" pattern is kind of the Godwin point of a argumentation to me. It structure basically is "it's different, so you're wrong", basically can be used in any argumentation to justify anything.

So, to both of you... are telling me that AI War ain't fun ? Most of what made the first game fun is still going to be there, or is it not ? (Yeah, snipers and a few other things were planned to go).

I thought we were speaking about what new features to keep, and I assumed that AI War II won't lose the fun features from AI War I. As, it's a sequel.

I'm trying to understand your point here.
Title: Re: What features to cut for round 2
Post by: Tridus on November 05, 2016, 11:56:14 am
So, to both of you... are telling me that AI War ain't fun ? Most of what made the first game fun is still going to be there, or is it not ? (Yeah, snipers and a few other things were planned to go).

I thought we were speaking about what new features to keep, and I assumed that AI War II won't lose the fun features from AI War I. As, it's a sequel.

I'm trying to understand your point here.

What I've read going around is that the reduced budget version will be more like AI War *before expansions*, rather than the AI War we have today. How much of that other stuff actually comes back depends on stretch goals or whatever. That's quite a lot of stuff disappearing in the sequel, and yes, I have serious doubts that "but it has modding!" will make up the difference.
Title: Re: What features to cut for round 2
Post by: Aklyon on November 05, 2016, 12:05:57 pm
What Tridus said is pretty much what I've been meaning to say as well.
Title: Re: What features to cut for round 2
Post by: kasnavada on November 05, 2016, 12:47:34 pm
What I've read going around is that the reduced budget version will be more like AI War *before expansions*, rather than the AI War we have today. How much of that other stuff actually comes back depends on stretch goals or whatever. That's quite a lot of stuff disappearing in the sequel, and yes, I have serious doubts that "but it has modding!" will make up the difference.

Ah, and thanks, that's much clearer.

Well, I disagree, since... "it has modding", if done right, could just bring back a lot of what those expansions, by the community itself. I'm basing that on the features added to other games by modders. If the game's moddable, then the dev makes features - and basic content, the modders do advanced content from there. It's reducing costs compared to the dev doing both features and the advanced content part.

Also, my opinion, from work, is that between hard-coding everything, and creating loaders for whatever feature you want to do from an human-readable support like xml (including the possibility of overriding objects), the initial investment, if any (depends on the number of objects to make by hand, and the time gained via your loader per item) pays of. So, it makes sense either way even with budget reduction in mind. That said, that part's not my call, it's Arcen's. So I'll leave it at it, I've no clue what they do in the inside after all.

But, if not moddability, what new feature would be a selling point ? graphics ? better perfs ? New UI paint ? A new story ? A better tutorial ?

"It's a sequel" doesn't really cut it for me.
Title: Re: What features to cut for round 2
Post by: chemical_art on November 05, 2016, 01:26:10 pm
None of those games were funded by kickstarter. They all had the luxury of years of development or came at a time when the game market was far less competitive.
Apples and Oranges.

Errr, sorry, but... What you're stating that modding is a selling point only if:
- it was sold before this very year ?
- only if they games have years of development ?
- only if they're not funded via a KS ?

That's... well. Nothing more to add. I believe I made my point.

As a whole, the "apple or orange" pattern is kind of the Godwin point of a argumentation to me. It structure basically is "it's different, so you're wrong", basically can be used in any argumentation to justify anything.

I will give good faith and explain to you:

Games made with several years of development give more content, and thus more potential to mod. In addition, it draws in a larger audience by virtue of its higher production values which in turns increases the odds of quality modders.
Games made in the early 2000's and before had a much less fierce game market then today. It was harder to get published, but once published it was easy to find an audience due to the bottleneck publishing created. With less games there is a greater audience and the virtues that go with it as described earlier.
Games that are published, rather then kickstarted, in general are more stable games. No publisher claims that modability is what carries a game. Modability may be a secondary virtue, but the original game is good enough. A Kickstarter whose claim is the modability is not a pitch for the common person. Which leads to another point: Modability is a niche. Niches don't draw in crowds. A Kickstarter that does not draw in crowds will not get substantial funding.

I say it is apples and oranges because on a fundamental level the pitch for a game to be published is very different then the pitch to make via kickstarter. I think on the publishing side it is easier to sell a game because it can be modded, because that implies you already have a good game. A kickstarter that claims that causes as many worries as benefits.
Title: Re: What features to cut for round 2
Post by: NichG on November 05, 2016, 02:07:15 pm
But, if not moddability, what new feature would be a selling point ? graphics ? better perfs ? New UI paint ? A new story ? A better tutorial ?

"It's a sequel" doesn't really cut it for me.

None of those things would cut it for me either, so I want to know the answer to this too. But I think this answer has to come from Arcen, based on their internal judgement about what is actually feasible given the budget of, say, $30k that they can expect as a bare minimum from the Kickstarter reboot.

The really tricky thing about this conversation is that even though the expected funding level will be less, it may be necessary to add something before other things can be taken away and still leave a game that people will want to support. But since there's less money...

So the mental tack I've been trying to take is, how to call attention to things that were going to be done anyhow but which are being wrapped up in general improvements and changes. Like, if you can make a statement 'AIW1 was great, but 7 years of playtesting and experience has made us wish we could try X, but there was something too rooted in the system to actually do that. So now with this sequel and rewrite, we have the chance to try X!'.

If that 'X' thing can be made broadly understandable, then it could be considered a feature just as much as 'playable races'. For instance, you could talk about some of the refleet discussions as a negative thing: 'AIW1 had a problem of Netflix time during refleeting, we've solved that', or you could even talk about it as an actual added element 'AIW2 will be designed from the ground up with an eye to how the player spends their time - at every moment, there will be meaningful gameplay decisions to make. From experience, we can recognize the mechanics which create an incentive to wait, and we have either removed those or have filled that wait time with other things to do.' Combined with some kind of explicit in-game recognition of the design idea, I think it would give a better idea to an outsider about what kinds of experiences they might have in playing.

This kind of thing is more like a change in marketing or how things are presented than an actual new feature - it's just taking things that were planned as general improvements and tweaks, and bringing them a bit more into the foreground and making them an idea that gets communicated to the player. I'm not sure how helpful that kind of suggestion is, to be honest, but its the sort of thing I can imagine that seems a realistic answer given the budget constraints.
Title: Re: What features to cut for round 2
Post by: kasnavada on November 05, 2016, 02:46:27 pm
(...)

I still have no clue where you're going with this.

What you're saying may be true - (I don't believe it for a second) - but making the KS succeed is irrelevant if making it succeed means Arcen's back at this in 6 months or a year. If anything, those remarks just show that something's lacking to Arcen to be a long-lasting succesful company with a wide PR reach. To be more "modern", or just to adapt better to the current market's difficulties. New things, preferably that worked in other places.

Sounds "dumb", but whatever the new AI War II KS will be, it needs to be the "foundation for a better tomorrow".

My hope is that in 3 years AI War II has a large "up to date" community, with good PR, good enough sales, and good games to go with all that. I can't see modding as being anything but a boon toward that goal. It, of course, ain't going to be at "complete" efficiency just now, but if it's never started nor planned, it's never going to be. Things have to start to be.


There are, of course, other things that can be done but here's the subject is "what new features"... so. Modding's my choice. I'd have other suggestions, if asked, for other places and topics...

Title: Re: What features to cut for round 2
Post by: Draco18s on November 06, 2016, 12:09:30 am
That directly contradict reviews of games like Rimworld, X-Com2, Neverwinter Nights, Skyrim... and also, a large part of the new "exciting" features (at least to me) kind of exists with modding being there. Better tutorial (possibly campaign), ships, player races...

You know what those games have in common besides modding? They're fun without any mods. Modding doesn't save a game that nobody wants to play in the first place. It improves on a fun base game.

Going to cut in he real quick:
Bethesda games ARE NOT FUN WITHOUT MODS.
End of story.

I agree with you that for some people, such as myself, a game isn't worth the effort to mod unless it is already fun.

But for Bethesda games, that is not true for 90% of the player base. Nearly every person I have ever met who likes Bethesda titles says, "oh god no, don't play unmodded, you NEED mods. The whole reason to play Bethesda games is to mod them."
Title: Re: What features to cut for round 2
Post by: chemical_art on November 06, 2016, 01:17:59 am
That directly contradict reviews of games like Rimworld, X-Com2, Neverwinter Nights, Skyrim... and also, a large part of the new "exciting" features (at least to me) kind of exists with modding being there. Better tutorial (possibly campaign), ships, player races...

You know what those games have in common besides modding? They're fun without any mods. Modding doesn't save a game that nobody wants to play in the first place. It improves on a fun base game.

Going to cut in he real quick:
Bethesda games ARE NOT FUN WITHOUT MODS.
End of story.

I agree with you that for some people, such as myself, a game isn't worth the effort to mod unless it is already fun.

But for Bethesda games, that is not true for 90% of the player base. Nearly every person I have ever met who likes Bethesda titles says, "oh god no, don't play unmodded, you NEED mods. The whole reason to play Bethesda games is to mod them."

http://www.statisticbrain.com/skyrim-the-elder-scrolls-v-statistics/

The sales directly contradict this.

Of its over 23,000,000 units for 450,000,000 USD only 14% of its sales were PC, which could be modded in a reasonable method.

You can have the opinion the game is unplayable but the sales, which drives production, tells a different story.

To state it another way: The PC sales alone did not pay for the budget, let alone drive a profit.
Title: Re: What features to cut for round 2
Post by: Timerlane on November 06, 2016, 01:07:40 am
OTOH, the Skyrim-Steam 'paid mods fiasco', which actually moved Valve to completely backtrack on something, even dragging Gaben out for a spontaneous AMA on Reddit(in which, IIRC, he mentioned their mail system was literally choking on all the protest/concern E-mails).

If there's anything I took away from all the related discussion, it's that Bethesda pretty much leaves their userbase to do their bugfixing/post-release support for them(and kinda drove me off of wanting to buy anything from them).
Title: Re: What features to cut for round 2
Post by: kasnavada on November 06, 2016, 01:18:34 am
Of its over 23,000,000 units for 450,000,000 USD only 14% of its sales were PC, which could be modded in a reasonable method.

You can have the opinion the game is unplayable but the sales, which drives production, tells a different story.

To state it another way: The PC sales alone did not pay for the budget, let alone drive a profit.

And just 'cause... AI War II is going to be a PC Game. Whatever sold on consoles, it's not the same market.

Pears & Peaches.


/sarcarms aside...
AI War II is stated to take on the features of AI War base, which was fun. This whole point is moot. Unless you think that the base AI War was a bad game ?

Other than that, as you stated, the market changed. A significant part of the buyers will expect moddability if the game is suited to it. Given the numerous ships, turrets, buildings that AI War has, and how it's handled in game, that it's suited to be modded is a no-brainer. Choosing the ships for a game is nice, but being able to make one's own ?
Title: Re: What features to cut for round 2
Post by: Tridus on November 06, 2016, 05:43:15 am
Going to cut in he real quick:
Bethesda games ARE NOT FUN WITHOUT MODS.
End of story.

I agree with you that for some people, such as myself, a game isn't worth the effort to mod unless it is already fun.

But for Bethesda games, that is not true for 90% of the player base. Nearly every person I have ever met who likes Bethesda titles says, "oh god no, don't play unmodded, you NEED mods. The whole reason to play Bethesda games is to mod them."

If we're using "nearly every person I've met" as a valid statistical sample for games that sell on such a global scale that they cause noticeable changes in Internet traffic, then sure. By that logic, AI War ain't fun either, because most of my friends don't like it. Time to shut the lights off and go home.

But if you want to meet some people who won't say that, here you go: https://steamcommunity.com/app/377160/discussions/0/365172408531432488/?ctp=2
Title: Re: What features to cut for round 2
Post by: Tridus on November 06, 2016, 05:56:35 am
OTOH, the Skyrim-Steam 'paid mods fiasco', which actually moved Valve to completely backtrack on something, even dragging Gaben out for a spontaneous AMA on Reddit(in which, IIRC, he mentioned their mail system was literally choking on all the protest/concern E-mails).

If there's anything I took away from all the related discussion, it's that Bethesda pretty much leaves their userbase to do their bugfixing/post-release support for them(and kinda drove me off of wanting to buy anything from them).

QA had absolutely nothing to do with what was policy decisions between sales & management at Valve and Bethesda. The paid mod system *worked* fine. People didn't like it for unrelated reasons, mostly falling into the "the mod creator should get a far bigger cut" group, and the "pay money, what madness is that?" group. It's too bad, really. I've long believed that we'd actually see Long War 2 in XCOM 2 instead of the Long War team trying to make their own game if there was a feasible way for them to get paid for making Long War 2. AS it stands, they can only do it as a career if they make their own game, and nobody's really coming out ahead on that.

From first hand experience with AAA games, they employ lots of QA. Just look at the credits, you'd be surprised how many are in there. The problem is that Bethesda games have so many permutations of what can happen that it's impossible to hit them all, and that (more generally across the industry) the marketing department doesn't want release to slip just because QA found something. Look at the Arkham Knight's PC release and it's crippling issues. Do you *really* think that QA didn't notice? Look at Assassins Creed Unity. The problems there were not a surprise to QA at Ubisoft.

Since most people have no idea how these studios work internally, it's easier to blame QA (who are relatively low on the corporate totem pole) than admit "we knew, but marketing & management didn't want to miss the launch date we started hyping two years ago".
Title: Re: What features to cut for round 2
Post by: Tridus on November 06, 2016, 06:10:26 am
Of its over 23,000,000 units for 450,000,000 USD only 14% of its sales were PC, which could be modded in a reasonable method.

You can have the opinion the game is unplayable but the sales, which drives production, tells a different story.

To state it another way: The PC sales alone did not pay for the budget, let alone drive a profit.

And just 'cause... AI War II is going to be a PC Game. Whatever sold on consoles, it's not the same market.

Pears & Peaches.

And you're basing the assumption that everyone on PC mods on... what, exactly? The whole problem with these discussions is that people take what the vocal minority online say and assume that's what everyone does, while entire segments of the gaming population are not represented at all.

Quote
/sarcarms aside...
AI War II is stated to take on the features of AI War base, which was fun. This whole point is moot. Unless you think that the base AI War was a bad game ?

Other than that, as you stated, the market changed. A significant part of the buyers will expect moddability if the game is suited to it. Given the numerous ships, turrets, buildings that AI War has, and how it's handled in game, that it's suited to be modded is a no-brainer. Choosing the ships for a game is nice, but being able to make one's own ?

It was a good game, in 2009. This isn't 2009. The market isn't the same. Plus, it wasn't competing with a prior version of itself featuring years of expansions. AI War 2 is doing that. Pitching "far less features than before, but you can change ship stats via modding!" isn't going to draw in the big crowds.  Hell, the first KS had modding in it, and that failed. How is stripping other features out (leaving fewer tools for modders to use) but still having modding now going to be the savior?

If it was full scale modding, maybe. But it's not. It's data modding only. I can't use it to create new mechanics, which when the game is mechanics light early on is what's actually needed.
Title: Re: What features to cut for round 2
Post by: kasnavada on November 06, 2016, 08:02:29 am
And you're basing the assumption that everyone on PC mods on... what, exactly? The whole problem with these discussions is that people take what the vocal minority online say and assume that's what everyone does, while entire segments of the gaming population are not represented at all.

Yeah, you might want to quote someone that actually told that instead of me. I certainly didn't state "everyone". I'm not stating that. What I'm saying is:
- "A significant part of the buyers will expect moddability if the game is suited to it." (auto-quote).
- priorize new features that are moddable.
- Yes, a game needs to be good, and as AI War I was, I've got no reason to expect that AI WAR II will be a piece of shit.
- moddability is a good idea to create long term interest in the game, and it has to start somewhere.
- I've no proof for AI War itself, but my professional opinion is that patterns that allow for "modding", if done from the ground up, is not a significant overcost in short term, and a cost gain in long term.
- AI War, the game itself, by its very nature, is "moddable" in the sense of there is stuff that people would want to mess around, like (example) new ships.

Now, Arcen can't really afford to ignore potential customers, or can it ? And, it can't afford to be back here in 6 months, no ?

It was a good game, in 2009. This isn't 2009. The market isn't the same. Plus, it wasn't competing with a prior version of itself featuring years of expansions. AI War 2 is doing that. Pitching "far less features than before, but you can change ship stats via modding!" isn't going to draw in the big crowds.  Hell, the first KS had modding in it, and that failed. How is stripping other features out (leaving fewer tools for modders to use) but still having modding now going to be the savior?
If it was full scale modding, maybe. But it's not. It's data modding only. I can't use it to create new mechanics, which when the game is mechanics light early on is what's actually needed.

Sure beats "AI WAR II, Pitching far less features than before"... and that's it. Which. I'm not proposing. So... yeah. Sigh.

In any case, I'm not advocating only xml based modding, I am actually advocating full scale modding. Maybe you're talking to someone else ? If so please stop quoting me. For reminder, I'm advocating to keep ships, units, player race (so possibility of having 2 different races) and tutorial / campaign moddable. Maybe I've forgotten to state it, as it's obvious to me, but that comes with examples. In fact, I believe I specifically spoke about making the community do part of this work to reduce costs...

I'd like to know where you're getting that xml-only information from though. You've been adamant that it would not be possible to create new mechanisms. Or else, I'm again wondering why you're quoting me, as it's not my opinion. Sigh.

Last... that "the market ain't the same" argument's getting ridiculous. I specifically stated games from 2000 to this year with modding as a selling point. Any "proof" that modding ain't a selling point this year compared to last decades ? Then again... as if it was even possible to have such a proof =).

On the "modding's a selling point front ? Rimworld's currently in beta. Don't starve - a bit older, still going strong. Oh, you'd want strategy games ? X-Com 2. Granted, it's more an action game. Civ 6. Cossacks 3. Stellaris. All of those have reviews, and entire lively sections of their community, buzzing around modding, generating content, for some of them, RPS articles, and free publicity. If that ain't a good point, I don't know what is. Modding's a taboo on KS for some reason ? First time I ever heard of something like this. Examples / proofs ? Otherwise I'm still going by "what is a selling point in the general case is a selling point here". Granted, not "THE" selling point, again, I don't state that. But a selling point nonetheless.

Because, even assuming that the "silent majority" isn't interested, they've got nothing to lose if a game's moddable. In any case, it's the vocal minority that generates noise. And modders are noisy. Apart from cost issues I'm not privy to, it's enough for me.
Title: Re: What features to cut for round 2
Post by: Timerlane on November 06, 2016, 08:12:43 am
OTOH, the Skyrim-Steam 'paid mods fiasco', which actually moved Valve to completely backtrack on something, even dragging Gaben out for a spontaneous AMA on Reddit(in which, IIRC, he mentioned their mail system was literally choking on all the protest/concern E-mails).

If there's anything I took away from all the related discussion, it's that Bethesda pretty much leaves their userbase to do their bugfixing/post-release support for them(and kinda drove me off of wanting to buy anything from them).

QA had absolutely nothing to do with what was policy decisions between sales & management at Valve and Bethesda. The paid mod system *worked* fine.
What I came away with was the issue of introducing it suddenly into a long-standing mod community.

Mods had significant interdependencies since everything had been left sitting out free and open for so long. And the promise of some level of 'protection' for paid mods drove users to put theirs under the paywall to keep others from claiming and profiting off of their work. It wasn't that the system was inherently 'bad', it just wasn't the right time and place for it.

At least that's what I got from the seemingly cooler heads in the debates.
Title: Re: What features to cut for round 2
Post by: Tridus on November 06, 2016, 08:16:09 am
In any case, I'm not advocating only xml based modding, I am actually advocating full scale modding. Maybe you're talking to someone else ? If so please stop quoting me. For reminder, I'm advocating to keep ships, units, player race (so possibility of having 2 different races) and tutorial / campaign moddable. Maybe I've forgotten to state it, as it's obvious to me, but that comes with examples. In fact, I believe I specifically spoke about making the community do part of this work to reduce costs.

I'd like to know where you're getting that xml-only information from though. You've been adamant that it would not be possible to create new mechanisms. Or else, I'm again wondering why you're quoting me, as it's not my opinion. Sigh.

That would be the design document, specifically the part where it says it's not possible to create new mechanics:

Quote
There are intrinsic limits to this.  XML is not a coding language, but rather a format for storing data that the code of the game then acts on.  This means that entirely new game mechanics out of whole cloth are not something that can be added via xml alone.  Those will still have to be added by Arcen coding -- which ultimately is useful since then it gets all of the performance vetting and the proper professional rigor.

Further down it also explicitly says "no scripting". Modding graphics/sound and a mod management system were both listed as "theoretical", which with things scaling back, more likely means cut than not. What will be possible is creating and editing ships, but only using mechanics that are already there. So if the game has shields, you could make a bomber with shields. If the game doesn't have shields, you can't.


Quote
On the "modding's a selling point front ? Rimworld's currently in beta. Don't starve - a bit older, still going strong. Oh, you'd want strategy games ? X-Com 2. Granted, it's more an action game. Civ 6. Cossacks 3. Stellaris. All of those have reviews, and entire lively sections of their community, buzzing around modding, generating content, for some of them, RPS articles, and free publicity. If that ain't a good point, I don't know what is. Modding's a taboo on KS for some reason ? First time I ever heard of something like this. Examples / proofs ? Otherwise I'm still going by "what is a selling point in the general case is a selling point here".

Civ 6 is a pretty great example actually, since they made almost no mention of modding while hyping up the game, exept to say "mod tools will be released sometime after launch". XCOM 2 had 3 mods at launch (and now has tons, of course). Mods didn't sell either of these games. Mods greatly extend the longevity of them, of course, but they had to sell on the basis of the game itself.

DotA might be a better example, because that was a Warcraft 3 mod that became more popular than Warcraft 3 itself. People literally did buy Warcraft 3 later in its lifetime soely for the purpose of DotA... but Warcraft 3 was already popular before that happened.

Nobody ever said modding was taboo on the KS, but you keep talking like modding is the great savior. It's not. If the game itself isn't compelling enough to sell, modding won't change that in the slightest. Given the results of the first KS, we clearly have a problem on that front.
Title: Re: What features to cut for round 2
Post by: Tridus on November 06, 2016, 08:18:30 am
OTOH, the Skyrim-Steam 'paid mods fiasco', which actually moved Valve to completely backtrack on something, even dragging Gaben out for a spontaneous AMA on Reddit(in which, IIRC, he mentioned their mail system was literally choking on all the protest/concern E-mails).

If there's anything I took away from all the related discussion, it's that Bethesda pretty much leaves their userbase to do their bugfixing/post-release support for them(and kinda drove me off of wanting to buy anything from them).

QA had absolutely nothing to do with what was policy decisions between sales & management at Valve and Bethesda. The paid mod system *worked* fine.
What I came away with was the issue of introducing it suddenly into a long-standing mod community.

Mods had significant interdependencies since everything had been left sitting out free and open for so long. And the promise of some level of 'protection' for paid mods drove users to put theirs under the paywall to keep others from claiming and profiting off of their work. It wasn't that the system was inherently 'bad', it just wasn't the right time and place for it.

At least that's what I got from the seemingly cooler heads in the debates.

Yep, that'd be fair. It had nothing to do with Bethesda leaving their userbase to do their bugfixing, though. That was what I was replying to. :) The system worked as designed. If the design itself is a bad idea, ultimately QA at a large studio can't do anything about that. Management makes that call.
Title: Re: What features to cut for round 2
Post by: kasnavada on November 06, 2016, 08:30:53 am
Nobody ever said modding was taboo on the KS
Yeah, actually, chemical_art did:

I say it is apples and oranges because on a fundamental level the pitch for a game to be published is very different then the pitch to make via kickstarter. I think on the publishing side it is easier to sell a game because it can be modded, because that implies you already have a good game. A kickstarter that claims that causes as many worries as benefits.

Quote
but you keep talking like modding is the great savior. It's not. If the game itself isn't compelling enough to sell, modding won't change that in the slightest.
I think I adressed that part already.

>>(...)I am actually advocating full scale modding. (...) to keep ships, units, player race (so possibility of having 2 different races) and tutorial / campaign moddable. (...) with examples. In fact, I believe I specifically spoke about making the community do part of this work to reduce costs...

Then again, I don't see anyone advocating something else that'd work. But in any case, all of the new interesting new feature I saw & wanted to keep could be moddable.

Quote
Given the results of the first KS, we clearly have a problem on that front.
The only thing that the first KS showed is that Arcen can't reach 3% of their customers.  :-\


That would be the design document, specifically the part where it says it's not possible to create new mechanics:
Ah damn, I missed that. Then the design doc is stupid. In any case, in Rimworld, new features are done via decompiling and recompiling the code, so... minor point ? Hopefully ? It's already been done by Red queen for AI War I too. Similar thing could be done for AI War II.

http://rimworldwiki.com/wiki/Modding_Tutorials


Edit for clarifications.
Title: Re: What features to cut for round 2
Post by: Aklyon on November 06, 2016, 08:48:19 am
If your modding relies on decompiling the game, thats not exactly an amazing point to tack on the KS. Does Red Queen's mod even work with the newer version of Classic, or did the minor update break it?
Title: Re: What features to cut for round 2
Post by: kasnavada on November 06, 2016, 09:13:29 am
If your modding relies on decompiling the game, thats not exactly an amazing point to tack on the KS. Does Red Queen's mod even work with the newer version of Classic, or did the minor update break it?

Only the "new feature" part, and no clue. All that's xml based should still work. At least that's how it does on Rimworld. The rest is random, because you can't know if the minor udpate broke your stuff without trying. A lot of modifications requiring code don't work after updates even with a more integrated system like X-Com II proposes.

In any case, the main features I want to keep is all that was proposed as moddable, so new races, new ships... and so on. Sorry if I was unclear, I believe this part of digressing this thread's over, no ?
Title: Re: What features to cut for round 2
Post by: Tridus on November 06, 2016, 09:38:36 am
Yep, I think so. :)
Title: Re: What features to cut for round 2
Post by: NichG on November 06, 2016, 10:01:41 am
Maybe a good angle for this thread's question would be to talk about stretch goals, see what people would want as early or later stretch goals?
Title: Re: What features to cut for round 2
Post by: x4000 on November 09, 2016, 09:34:15 am
Hello, I am here.  I am sorry for being absent.  Are there any questions I can help with?
Title: Re: What features to cut for round 2
Post by: kasnavada on November 09, 2016, 12:07:06 pm
Hello, I am here.  I am sorry for being absent.  Are there any questions I can help with?

Not sure, as you put the new list of features on the KS. That answered my questions at least =). Can't speak for all though.
Title: Re: What features to cut for round 2
Post by: x4000 on November 09, 2016, 12:22:44 pm
Cool. :)
Title: Re: What features to cut for round 2
Post by: keith.lamothe on November 09, 2016, 09:21:22 pm
Incidentally, kasnavada, these past couple days I was doing some experiments with loading dll's at runtime and I've got the logic for generating the galaxy map such that you can basically write your own C# function to generate the map, and tie that to a map style (new or existing) in the xml. So more than just pure data modding will be possible after all :) At least, assuming we don't get some unanimous response of "argh! no security at all! plague!", since it is very much a no-lifeguard-at-this-pool sort of modding.

There are other parts of the code I hope to make moddable in that way, though some of them are very sensitive to being handled exactly correctly in terms of thread safety, etc, or bad things can happen.

"There are no lifeguards at this pool. There are, however, multidimensional sharks."
Title: Re: What features to cut for round 2
Post by: Cinth on November 09, 2016, 09:42:40 pm
Heh, every Arcen game needs more torch-bearers wandering the lumbermill.  It makes it much more exciting!
Title: Re: What features to cut for round 2
Post by: Draco18s on November 09, 2016, 09:45:26 pm
"There are no lifeguards at this pool. There are, however, multidimensional sharks."

Hehe.
Title: Re: What features to cut for round 2
Post by: kasnavada on November 10, 2016, 01:26:21 am
Incidentally, kasnavada, these past couple days I was doing some experiments with loading dll's at runtime and I've got the logic for generating the galaxy map such that you can basically write your own C# function to generate the map, and tie that to a map style (new or existing) in the xml. So more than just pure data modding will be possible after all :) At least, assuming we don't get some unanimous response of "argh! no security at all! plague!", since it is very much a no-lifeguard-at-this-pool sort of modding.

There are other parts of the code I hope to make moddable in that way, though some of them are very sensitive to being handled exactly correctly in terms of thread safety, etc, or bad things can happen.

"There are no lifeguards at this pool. There are, however, multidimensional sharks."

Ah, well, that's good to know if it's possible =).
And the security risk... thing is that Arcen has an history of "hey, modding's useless, just ask Keith & Chris and they'll code it". I basically was prepared to some kind of opposition when I spoke about modding (it was much more than I anticipated though, I should have been much clearer on what I meant).

About the risk, well... this form of modding basically is rewriting part of the game code, so it comes with that kind of risk. :-\ Also, from work, I've had people crash our applications by misusing our APIs. Again I'm back to rimworld - because it's the one I'm currently following - but those guys even have a section dedicating to mod bugs https://ludeon.com/forums/index.php?board=23.0 =). As far as I can tell, while I agree that "you can break the game with dll modding" ain't that much of a selling point, I don't think there are many solutions to allow others to make additional mechanics, so my belief is that this risk is expected and understood. On the "plus side", some of the most popular mods there depend on "modder" code. So there is that. Special thanks to hospitality mod & prepare carefully by the way.
Title: Re: What features to cut for round 2
Post by: keith.lamothe on November 10, 2016, 09:26:21 am
On security, I mean that it's trivial for a bit of custom c# code to delete huge chunks of the files on your computer, etc. So you wouldn't want to download someone's mod unless it was either pure xml data or you trusted them enough to run an application from them.

I suspect there are ways to lock down what the custom code can do, but I'm not sure they'd be compatible with the usefulness of the feature.

Currently I'm thinking the c# mods would be distributed as source-only, and the game would compile them for you. But I haven't proved that concept yet.
Title: Re: What features to cut for round 2
Post by: kasnavada on November 10, 2016, 10:05:09 am
Oh, that part. Even if you do compile the code yourself, is there any way to prevent it ? You're alone against the world here too.
Also, there could simply be a virus or something in the zip that's used for the code.

I think it's worth trying to ask colleagues that tried to tackle the sames issues, but IMO your best solution is going to be something in the line of "the mod gets downloaded, the user that downloaded it posts insults to the guy / reports to steam / whatever the repo for mods is and banned =)".
Title: Re: What features to cut for round 2
Post by: keith.lamothe on November 10, 2016, 10:08:05 am
Yea, my general approach is "that's one of those problems you don't need to solve, so don't tie yourself in knots trying to solve it". But I wanted to mention it in case I was incorrect in that analysis.
Title: Re: What features to cut for round 2
Post by: kasnavada on November 10, 2016, 10:52:20 am
That's where my expertise kinds of ends. Security at applications for my workplace are either with web applications behind 2/3 levels of protection, or intranet, again, behind some level of protection and so. ::)

My guess would that be minor protection (few days, like checking that a few patterns / class ain't used) are worth it - because most people can barely code and would be discouraged by those.

Anything beyond that... well there are real game devs out there - which probably can answer that a lot better than I. That said, for my personal knowledge, if you've got opinions from others to share on this I'm interested.
Title: Re: What features to cut for round 2
Post by: Draco18s on November 10, 2016, 11:35:34 am
Interestingly enough, Java can do that too, and people don't seem to have any qualms about downloading Minecraft mods.

(I've written mods that access the file system before, just to save/load custom data, but I had to figure out the "ok, how do I figure out where the world save folder is?" question)

I've seen people attempt to write mods that download data from a webserver,* and more than one that download jar files.  They've always been told "no, don't do that" because of arbitrary code execution, but their goals were for something like an automated updater.

*One guy was trying to use a SQL database to store information about the world state--something about regenerating ores maybe?--and was told "that's stupid because it'll only ever work for one world." i.e. that he could never distribute his mod to anyone else interested in it. "Also, store that data in RAM, a database is overkill."
Title: Re: What features to cut for round 2
Post by: keith.lamothe on November 10, 2016, 11:42:00 am
Thanks, that's very helpful info. Basically confirming the hunch that:

1) Yes, in theory, this is wildly dangerous.
2) No, in practice, nobody cares.

So I'll plan on moving forward with the write-your-own-C# method of modding for the parts where it makes sense :)
Title: Re: What features to cut for round 2
Post by: Draco18s on November 10, 2016, 12:07:45 pm
Helps that Minecraft mods have a tendency to be open (visible) source in the first place. At least, the larger more well-known ones.

But yeah.  It's kind of dangerous in Shark Reef, but people go swimming anyway.
Title: Re: What features to cut for round 2
Post by: x4000 on November 10, 2016, 12:08:13 pm
That was my hunch as well, having being in mods for a lot of games.  GTA V is a much better target for malicious mods if someone wants to do one.   In those cases it's often injecting arbitrary code so that it can then load custom models and behaviors and whatnot, too.  Goodness only knows what is going on with some of those Skyrim mods. ;)
Title: Re: What features to cut for round 2
Post by: Sizzle on November 10, 2016, 12:31:42 pm
Here's waiting for the first bitcoin miner to be found in a mod for some game.  (It probably has already happened, just I am not aware of it).
Title: Re: What features to cut for round 2
Post by: x4000 on November 10, 2016, 01:52:54 pm
Here's waiting for the first bitcoin miner to be found in a mod for some game.  (It probably has already happened, just I am not aware of it).

He made 17 cents!!! ;)
Title: Re: What features to cut for round 2
Post by: Draco18s on November 10, 2016, 02:47:51 pm
Here's waiting for the first bitcoin miner to be found in a mod for some game.  (It probably has already happened, just I am not aware of it).

Not worth it.  For two reasons:
1) all the easy coins have already been found
2) people tend not to run 400 instances of the game 24/7
But humorous.
Title: Re: What features to cut for round 2
Post by: Sizzle on November 10, 2016, 03:38:02 pm
Here's waiting for the first bitcoin miner to be found in a mod for some game.  (It probably has already happened, just I am not aware of it).

Not worth it.  For two reasons:
1) all the easy coins have already been found
2) people tend not to run 400 instances of the game 24/7
But humorous.

Good, I intended it to be humorous.  :D

But as for #2, it wouldn't be that hard for a bit of C# code to spawn a bunch of threads.  You don't need to be running 400 instances of the game.   Nor does it necessarily have to keep running 24/7 -- it could just run once (ref:  http://stackoverflow.com/questions/1008886/how-to-create-a-process-that-outlives-its-parent ) -- but that's neither here nor there -- it was the humour I was after.

 
Title: Re: What features to cut for round 2
Post by: WolfWhiteFire on November 10, 2016, 04:02:28 pm
Well having mods that can be dangerous kind of reduces the appeal to me personally. Maybe other people would be more willing to take that risk, or maybe it might be safer to only download mods a ton of people have downloaded that have also been out a fair amount of time since people would likely report the problem.
Title: Re: What features to cut for round 2
Post by: keith.lamothe on November 10, 2016, 04:05:47 pm
Well having mods that can be dangerous kind of reduces the appeal to me personally. Maybe other people would be more willing to take that risk, or maybe it might be safer to only download mods a ton of people have downloaded that have also been out a fair amount of time since people would likely report the problem.
Yea, the idea is basically "would you run an application from this modder?" If not, then don't run a mod from them either.

That said, pure xml mods would be pretty safe.
Title: Re: What features to cut for round 2
Post by: Tridus on November 10, 2016, 04:20:19 pm
That was my hunch as well, having being in mods for a lot of games.  GTA V is a much better target for malicious mods if someone wants to do one.   In those cases it's often injecting arbitrary code so that it can then load custom models and behaviors and whatnot, too.  Goodness only knows what is going on with some of those Skyrim mods. ;)

Skyrim's mods are actually locked down in terms of what they can do, so they can't just do anything on your system willy nilly. Skyrim Script Extender exists to remove some of those limitations and let them do more. That's especially true for the ones that work on the console versions, since the console makers are not cool with "downloads that can do anything".

C# applications can do the same thing, by using things like code access security or using System.Addin (https://msdn.microsoft.com/en-us/library/bb384200(v=vs.110).aspx) to load the external assembly in another AppDomain with more limited security permissions.

Just saying "we'll run anything you give us with no regard for security whatsoever" is not the recommended method of doing things.
Title: Re: What features to cut for round 2
Post by: Draco18s on November 10, 2016, 04:23:53 pm
Having the power of dll mods would be very awesome.  No individual would have to use them, but it opens up a whole slew of things people would be able to do because XML can't do everything.

In terms of design: do XML where possible.  Where not possible, add API hooks.
Title: Re: What features to cut for round 2
Post by: x4000 on November 11, 2016, 11:33:25 am
Huh!  That is fascinating on System.Addin.  I'm not sure when that was added, but I'm pretty sure it's not in the version of mono we're using.

Interestingly, loading them in app domains with lower security profiles does make a ton of sense and is something that should work here -- that was in .NET 1.0 even, and it's just been so many years (and me never having to use it) that I forgot about it.  But yeah, we ought to actually be able to just say "load these in an appdomain that is super restrictive" and that would be the end of it.
Title: Re: What features to cut for round 2
Post by: Draco18s on November 11, 2016, 12:27:28 pm
Huh!  That is fascinating on System.Addin.  I'm not sure when that was added, but I'm pretty sure it's not in the version of mono we're using.

Reminds me of a Thing I tried to do once only to find out Unity uses .NET 3.5 and the feature I wanted was from .NET 4 (generics with covariance and contravariance).
Title: Re: What features to cut for round 2
Post by: x4000 on November 11, 2016, 12:38:50 pm
Huh!  That is fascinating on System.Addin.  I'm not sure when that was added, but I'm pretty sure it's not in the version of mono we're using.

Reminds me of a Thing I tried to do once only to find out Unity uses .NET 3.5 and the feature I wanted was from .NET 4 (generics with covariance and contravariance).

It's hard to even know what unity supports.  They're using Mono 2.x, whatever that means in terms of direct correlation.  It's close to .NET 3.5, but not fully there.

Heck, .NET 3.5 is still to me "new stuff" in some way, and I have a mistrust of LINQ and view generics as this semi-new thing.  I feel like an old fogey now, but I came into .NET when it was just finishing up beta, and struggled through the painful C# 1.0 period.  The 2.0 revolution that added generics and so on was like a magic gift that I still somehow don't think of as having been around for a long time.  Anonymous methods and even moreso the var keyword and default parameter values are like some sort of black magic to me.  It takes me a while to trust them, because I always have to check heap stasis and I typically want to know if it has the same sort of overhead that virtual methods do versus abstract or standard ones, etc.

Can you believe I still cringe at the extra slight processing of virtual methods?  That was relevant in the very early 2000s when a processor was single core and 800Mhz, but even then it was a little on the fussy side (to put it mildly).  Now it's just a ridiculous thing to even consider, but old habits like that die hard.  :P
Title: Re: What features to cut for round 2
Post by: Draco18s on November 11, 2016, 02:21:38 pm
I feel like an old fogey now, but I came into .NET when it was just finishing up beta, and struggled through the painful C# 1.0 period.  The 2.0 revolution that added generics and so on was like a magic gift that I still somehow don't think of as having been around for a long time.  Anonymous methods and even moreso the var keyword and default parameter values are like some sort of black magic to me.

Haha. Too true.
I've gotten the hang of most of it due to having been in Javaland for a while (and in some respects, having to deal with it because Forge Said So).
But it's ungodly super awesome.

This being one of the things that Forge did that made everyone happy (once people realized what it was and how it worked):
Code: [Select]
public <T> T getCapability(Capability<T> capability, EnumFacing sideAccessed) {
//...
}

The Capability<T> bit is basically a way to say "I'm passing in a reference type, if you deal with that type, give me that object instance."  No more "TileEntity MyThing implements IInventory ISidedInventory IEnergyProvider IRedPowerProvider IMechanicalSupplier IUniversalPowerAdapter...." Nope, no more "god object," it's all capabilities now.

If the object doesn't have the requested capability, return null (or rather, return super.getCapability, so you're not accidentally skipping any provided by a super-class!).  If it does, return it.
Title: Re: What features to cut for round 2
Post by: x4000 on November 11, 2016, 02:38:39 pm
Keith added a ton of new things kind of along those lines, too.  Extension methods for enum values, which was nutsy to me and so awesome.  We still do typical inheritance most of the time, but thanks to a lot of unity asset store assets I've picked up some new tricks and habits such as extending a variety of classes built into unity and putting on my own methods to them so that I can do things quicker.  No more calls to Mat.Whatever in our own internal math library, at least for some things.
Title: Re: What features to cut for round 2
Post by: Draco18s on November 11, 2016, 02:50:05 pm
Mhm.
The idea of generic capabilities is awesome for mods, though.  Especially if you want two mods to be able to interact with each other, which so often in Minecraft they do.

What I was trying to do in Unity was basically just events.  Being able to store function references and when the event occurred, call the method.  I didn't like the C# way of doing things and eventually hacked my way to a solution I was mostly happy with (delegates were too strict for my purposes).
Title: Re: What features to cut for round 2
Post by: x4000 on November 11, 2016, 04:07:25 pm
Got it.  I notice that unity also has the SendMessage thing that allows you to call a method by name on any MonoBehaviors in a tree of objects.  I kinda like that (reminds me of the underlying old win32 messaging process, but a little more modern), but I'm not sure how exactly they're doing it.  Is it in-situ reflection?  Is it precompiled?  Is it based on some sort of hashing dictionary?

Overall without knowing those things, I tend to avoid that tool because I don't trust the efficiency.
Title: Re: What features to cut for round 2
Post by: jenya on November 11, 2016, 05:23:33 pm
sendmessage, quick google scan says this is reflection and could be bad
https://www.sebaslab.com/whats-wrong-with-sendmessage-and-broadcastmessage-and-what-to-do-about-it/
Title: Re: What features to cut for round 2
Post by: Draco18s on November 11, 2016, 05:27:01 pm
Yeah, its reflection, and comes with the associated costs.
Heck, even unity's "build in" methods (start, update, etc) are invoked via reflection (how's THAT for efficient code?)
Title: Re: What features to cut for round 2
Post by: Tridus on November 12, 2016, 07:08:42 am
Huh!  That is fascinating on System.Addin.  I'm not sure when that was added, but I'm pretty sure it's not in the version of mono we're using.

Reminds me of a Thing I tried to do once only to find out Unity uses .NET 3.5 and the feature I wanted was from .NET 4 (generics with covariance and contravariance).

It's hard to even know what unity supports.  They're using Mono 2.x, whatever that means in terms of direct correlation.  It's close to .NET 3.5, but not fully there.

Heck, .NET 3.5 is still to me "new stuff" in some way, and I have a mistrust of LINQ and view generics as this semi-new thing.  I feel like an old fogey now, but I came into .NET when it was just finishing up beta, and struggled through the painful C# 1.0 period.  The 2.0 revolution that added generics and so on was like a magic gift that I still somehow don't think of as having been around for a long time.  Anonymous methods and even moreso the var keyword and default parameter values are like some sort of black magic to me.  It takes me a while to trust them, because I always have to check heap stasis and I typically want to know if it has the same sort of overhead that virtual methods do versus abstract or standard ones, etc.

Can you believe I still cringe at the extra slight processing of virtual methods?  That was relevant in the very early 2000s when a processor was single core and 800Mhz, but even then it was a little on the fussy side (to put it mildly).  Now it's just a ridiculous thing to even consider, but old habits like that die hard.  :P

The funny thing about var is that ReSharper actually complains if you *don't* use it, by default. 'string x = "abc";' will make it ask you why you're not using var.

We're mostly working on .net 4.5 now at work and there's so many things available that you almost have to come up with a subset that everyone understands, otherwise it gets unwieldly. Linq made the cut, though, because being able to query a List<T> with that syntax is just lovely.
Title: Re: What features to cut for round 2
Post by: jenya on November 12, 2016, 09:37:51 am
the var keyword does not affect runtime performance, compiler will infer the correct type at compile time
http://stackoverflow.com/questions/356846/will-using-var-affect-performance
Title: Re: What features to cut for round 2
Post by: Draco18s on November 12, 2016, 09:47:11 am
the var keyword does not affect runtime performance, compiler will infer the correct type at compile time
http://stackoverflow.com/questions/356846/will-using-var-affect-performance

While true, it actually makes writing code less strict.  Having gotten into the habit of typing my variables, I like knowing what type they are, and I like my IDE knowing too.
Title: Re: What features to cut for round 2
Post by: x4000 on November 14, 2016, 10:31:39 am
sendmessage, quick google scan says this is reflection and could be bad
https://www.sebaslab.com/whats-wrong-with-sendmessage-and-broadcastmessage-and-what-to-do-about-it/

Color me not surprised. :/  Another case of unity doing something in a really convenient fashion but choosing a rather stupid implementation for it. :(

the var keyword does not affect runtime performance, compiler will infer the correct type at compile time
http://stackoverflow.com/questions/356846/will-using-var-affect-performance

While this may be true, I don't trust that is is true in the case of Mono.  The version of Mono used in unity is janky in a number of ways -- foreach causes heap allocations!!  When we moved over from native .NET to mono, there were a number of things that had been perfectly great in performance that suddenly were disasters on the CPU or RAM or GC or all of the above.

Not to mention the GC itself is really really bad.

the var keyword does not affect runtime performance, compiler will infer the correct type at compile time
http://stackoverflow.com/questions/356846/will-using-var-affect-performance

While true, it actually makes writing code less strict.  Having gotten into the habit of typing my variables, I like knowing what type they are, and I like my IDE knowing too.

This, too.  There are plenty of cases where type can't be correctly inferred, too.  Is an integer-looking number an int32?  uint?  Int64?  Etc.  A lot of times that doesn't matter, but sometimes it does.  And I don't really care for having all my integers defaulting to 64bit just because we're on a 64bit system; frankly short and ushort should be used a lot more than they are.  And actually I guess that really should be int16 and uint16; I don't know if short got remapped to int32 on 64bit machines.

And a lot of times that will vary by machine and compile parameters.  If you're hoping for sim-concurrence in a game that can desync, then even float isn't precise enough thanks to differences in FPUs; there are cases where you can get away with it by using a double, but in general we use fixed-int math instead for the ultimate in predicability (and bitshifts are handy with that, too).

It's a funny mess, the ecosystem of various implementations of the .NET spec...
Title: Re: What features to cut for round 2
Post by: Draco18s on November 14, 2016, 01:18:34 pm
This, too.  There are plenty of cases where type can't be correctly inferred, too.  Is an integer-looking number an int32?  uint?  Int64?  Etc.  A lot of times that doesn't matter, but sometimes it does

Or in the monster of a method signature I wrote yesterday:
(Java)

private <T extends Comparable<T>, V extends T,U extends Comparable<U>, W extends U> void addArbitraryOre(String orename, IBlockState flower, IBlockState desertFlower, @Nullable IProperty<T> flowerProp, @Nullable V flowerValue, @Nullable IProperty<U> desertProp, @Nullable W desertValue) { ... }

Technically I could shorten the generics to <T extends Comparable<T>, U extends Comparable<U>> and remove the @Nullable annotations, but given the method I pass these parameters to (and isn't mine) uses "V extends T" I figured I should match.  This was just an internal helper method anyway.

But using "var" would be too dangerous.
Title: Re: What features to cut for round 2
Post by: Tridus on November 14, 2016, 01:46:02 pm
While this may be true, I don't trust that is is true in the case of Mono.  The version of Mono used in unity is janky in a number of ways -- foreach causes heap allocations!!  When we moved over from native .NET to mono, there were a number of things that had been perfectly great in performance that suddenly were disasters on the CPU or RAM or GC or all of the above.

It has to be true, it's how var works. var doesn't exist in the runtime, the compiler figures out what it is and makes the IL code for that. Mono could derive something weird, I guess, but it has to derive *something* at compile time. Thus, there's no performance cost there.

Quote
This, too.  There are plenty of cases where type can't be correctly inferred, too.  Is an integer-looking number an int32?  uint?  Int64?  Etc.  A lot of times that doesn't matter, but sometimes it does.  And I don't really care for having all my integers defaulting to 64bit just because we're on a 64bit system; frankly short and ushort should be used a lot more than they are.  And actually I guess that really should be int16 and uint16; I don't know if short got remapped to int32 on 64bit machines.

And a lot of times that will vary by machine and compile parameters.  If you're hoping for sim-concurrence in a game that can desync, then even float isn't precise enough thanks to differences in FPUs; there are cases where you can get away with it by using a double, but in general we use fixed-int math instead for the ultimate in predicability (and bitshifts are handy with that, too).

It's a funny mess, the ecosystem of various implementations of the .NET spec...

Can you even do that in C#? I know if I do this:

var x = 14;

It's an int. The spec says so. It's *always* an int, unless it can't be represented as an int. The only other way it's not an int is if I tell it otherwise:

var x = 14L;

That one would be a long. There is, oddly, no way to do this for a short. But unless there's a button somewhere I haven't seen in C#, someone can't come along and change what "int" means, which means var is very consistent in what you get out of it.


Quote from: Draco18s
Or in the monster of a method signature I wrote yesterday:
(Java)

private <T extends Comparable<T>, V extends T,U extends Comparable<U>, W extends U> void addArbitraryOre(String orename, IBlockState flower, IBlockState desertFlower, @Nullable IProperty<T> flowerProp, @Nullable V flowerValue, @Nullable IProperty<U> desertProp, @Nullable W desertValue) { ... }

Technically I could shorten the generics to <T extends Comparable<T>, U extends Comparable<U>> and remove the @Nullable annotations, but given the method I pass these parameters to (and isn't mine) uses "V extends T" I figured I should match.  This was just an internal helper method anyway.

But using "var" would be too dangerous.

My Java is rusty, but I'm pretty sure using var would be a compiler error there, because it returns void. There's no type for var to infer.
Title: Re: What features to cut for round 2
Post by: keith.lamothe on November 14, 2016, 01:52:37 pm
It has to be true, it's how var works. var doesn't exist in the runtime, the compiler figures out what it is and makes the IL code for that. Mono could derive something weird, I guess, but it has to derive *something* at compile time. Thus, there's no performance cost there.
Yea, it's like extension methods where it's all compile-time, so it's safe enough.

We're just grognards about everything being strongly typed, not just at runtime, but in the mind of someone reading the code..

Quote
But unless there's a button somewhere I haven't seen in C#, someone can't come along and change what "int" means
We've generally assumed that int is an Int64 in a x64 project. Apparently we were incorrect: http://stackoverflow.com/questions/651956/sizeofint-on-x64

I'm occasionally pedantic enough to write Int32. I almost always write "Int64" over "long".
Title: Re: What features to cut for round 2
Post by: Draco18s on November 14, 2016, 02:05:35 pm
My Java is rusty, but I'm pretty sure using var would be a compiler error there, because it returns void. There's no type for var to infer.

I meant for the method parameters.

But sure, I'll give you a var a = method() example.

public <T> T getCapability(Capability<T> capability, EnumFacing facing)

Enjoy. :)
Title: Re: What features to cut for round 2
Post by: garion333 on November 14, 2016, 02:18:52 pm
Hey all! I'm here to discuss what features to cut add in as Stretch Goals!

*reads thread*

(https://media.giphy.com/media/4pMX5rJ4PYAEM/giphy.gif)

;)
Title: Re: What features to cut for round 2
Post by: Tridus on November 14, 2016, 02:24:47 pm
My Java is rusty, but I'm pretty sure using var would be a compiler error there, because it returns void. There's no type for var to infer.

I meant for the method parameters.

You can't use var for method parameters. Someone realized that'd be an unfortunate idea. ;)

Quote
But sure, I'll give you a var a = method() example.

public <T> T getCapability(Capability<T> capability, EnumFacing facing)

Enjoy. :)

eew :P
Title: Re: What features to cut for round 2
Post by: x4000 on November 14, 2016, 02:37:15 pm
Quote
But unless there's a button somewhere I haven't seen in C#, someone can't come along and change what "int" means
We've generally assumed that int is an Int64 in a x64 project. Apparently we were incorrect: http://stackoverflow.com/questions/651956/sizeofint-on-x64

I'm occasionally pedantic enough to write Int32. I almost always write "Int64" over "long".

WHOA!  This changes a whole lot of things, in my opinion.  Heck, we might be able to support 32bit OSes after all with AI War 2.

I recall super distinctly reading that int changed what it was aliasing at some point.  It may have been misinformation, or maybe it was java or something.  It looks like ILP64 does do that, but .NET doesn't use it, so hooray.

Given that our simulation runs entirely on int and long and does not use float in anything deterministic, that means we'd be okay with cross-compatibility between 32bit and 64bit clients.
Title: Re: What features to cut for round 2
Post by: Tridus on November 14, 2016, 03:47:53 pm
Maybe you were thinking of IntPtr, which does change size?
Title: Re: What features to cut for round 2
Post by: Mad Rubicant on November 14, 2016, 04:32:13 pm
I don't recall where I read this, but
Code: [Select]
byte ::= (unsigned 8-bit) Byte
short ::= Int16
ushort ::= UInt16
int ::= Int32
uint ::= UInt32
long ::= Int64
ulong ::= Uint64

And then there's IntPtr which is probably a wrapper around a machine pointer, which does vary with architecture. AFAIK on x86 it's always 4 bytes and x86-64 it's always 8 bytes. This also has the interesting effect of screwing you over when you use ints to index arrays in 64-bit mode C/C++, because the compiler sees a type mismatch (Array dereference is a 64-bit pointer, but you're adding a 32-bit value to it) and generates less-performant code in the 99% of cases where you're not relying on your index being a 32-bit int.
Title: Re: What features to cut for round 2
Post by: Draco18s on November 14, 2016, 04:48:49 pm
Quote
But sure, I'll give you a var a = method() example.

public <T> T getCapability(Capability<T> capability, EnumFacing facing)

Enjoy. :)

eew :P

That's actually the upgraded version of "MyTileEntity extends TileEntity implements [list of 29 interfaces]"

The interface lists were stupid huge and required @Optional annotations so that said interfaces were removed if the mod they were for wasn't present.  Now its all handled by capabilities.  You ask it for what kind of capability you want, and you get it back.[/list]
Title: Re: What features to cut for round 2
Post by: x4000 on November 15, 2016, 10:03:23 am
Apparently it was IntPtr I was thinking of, I guess. I don't know, I guess this is a misconception I've had for coming on a decade and a half.