Limelight Forums

Full Version: Performance Optimisation
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
An ongoing problem with Limelight has been performance for the end-user, and although a lot of this is down to players having sub-par systems, performance and stability is relatively poor compared to other servers of a similar nature such as Fearless.

There have been a lot of updates recently, especially in the last year or so, but from what I have seen, there has been little to no effort in optimising performance. Updates have been high in quantity, but they have failed to significantly impact gameplay; I would call them 'cheap and cheerful' updates. Excuses have been made that performance is a fault of Garry's Mod itself, but whilst that is true, it seems that performance on Limelight is not being bottlenecked by it.

If things continue like this, I feel that we'll have a case similar to Samsung with their earlier smartphones, who added a ton of gimmicky features, very few of them being useful, creating performance issues which Samsung are still trying to address today.

Aspects of performance and stability which are in particular need of addressing are the lag spikes when opening the F1 menu, game crashes and frame times (separate to FPS, read here to find out a bit more about it). Gameplay feels very choppy and lacks fluidity, even if the FPS may suggest otherwise.
Yeah. Optimization is wank. Kinda feel like we need to scrap the gamemode and build it up from its core, rather then adding stuff onto it.
With this amount of revenue:
[Image: G8H1tMH.png]
Can't LL make posts on GMOD store looking for Dev's? I mean, if we are gonna build a new game mode it's gonna take a lot of work from quite a few people.
Just little thing like media player know issue to causing lag/freezing so why don't devs disable it so we can't spawn it in.
(Apr 29, 2018, 12:42 PM)Gamerpro2266 Wrote: [ -> ]Just little thing like media player know issue to causing lag/freezing so why don't devs disable it so we can't spawn it in.

Yeah, it's things like these and the laggy F1 menu which completely ruin the gameplay. Developers need to fix what they currently have rather than add more things which they may also need to fix.
(Apr 29, 2018, 04:15 PM)Blazing Wrote: [ -> ]
(Apr 29, 2018, 12:42 PM)Gamerpro2266 Wrote: [ -> ]Just little thing like media player know issue to causing lag/freezing so why don't devs disable it so we can't spawn it in.

Yeah, it's things like these and the laggy F1 menu which completely ruin the gameplay. Developers need to fix what they currently have rather than add more things which they may also need to fix.

They are making a new one with a new Hud
Am sure  can expand/correct where wrong;

We have budgeted a fairly large amount for optimisation. Through my understanding there are constraints on how well the server will ever run, which is based on the outdated code that is GMOD.

However optimisation has been worked on rather consistently. The main problem with it is that it's very time consuming compared to what is gained. (Fractions of an FPS for hours worth of work.)

We have discussed recreating CityRP, but it would literally take months, and with the current size and activity of the team, would result in little to no updates of any size, including bug fixes for months on end. And that would be just to produce a gamemode with less than what is currently available on ours.

So ultimately it would come down to: Having months without content (or anything in the works), to then have a gamemode which has less content and would only run marginally better due to constraints of GMOD. This would be an incredibly large risk for Limelight, and wouldn't exactly pay off a great deal, which essentially is why optimisation hasn't taken center stage.

With the development of 'Gmod2', comes the potential for the gamemode to be reinvented/recreated to a better standard. Of course this is a while off, and not even guaranteed so that's an additional factor.

Essentially comes down to resources. We don't have enough developers, money or time to recreate the gamemode. If we did commit, it would very likely have a negative impact on the community with little net gain in reality.


*This answer is based on performance and not fluidity of gamemode might I add - I agree it should be more fluid and userfriendly, and that some features are rather pointless*.
I'll post a full response once I get back down from holiday. However, Jono is mostly.correct.
(Apr 29, 2018, 04:59 PM)Jono Wrote: [ -> ]Am sure  can expand/correct where wrong;

We have budgeted a fairly large amount for optimisation. Through my understanding there are constraints on how well the server will ever run, which is based on the outdated code that is GMOD.

However optimisation has been worked on rather consistently. The main problem with it is that it's very time consuming compared to what is gained. (Fractions of an FPS for hours worth of work.)

We have discussed recreating CityRP, but it would literally take months, and with the current size and activity of the team, would result in little to no updates of any size, including bug fixes for months on end. And that would be just to produce a gamemode with less than what is currently available on ours.

So ultimately it would come down to: Having months without content (or anything in the works), to then have a gamemode which has less content and would only run marginally better due to constraints of GMOD. This would be an incredibly large risk for Limelight, and wouldn't exactly pay off a great deal, which essentially is why optimisation hasn't taken center stage.

With the development of 'Gmod2', comes the potential for the gamemode to be reinvented/recreated to a better standard. Of course this is a while off, and not even guaranteed so that's an additional factor.

Essentially comes down to resources. We don't have enough developers, money or time to recreate the gamemode. If we did commit, it would very likely have a negative impact on the community with little net gain in reality.


*This answer is based on performance and not fluidity of gamemode might I add - I agree it should be more fluid and userfriendly, and that some features are rather pointless*.

Whilst I can understand that the developers are in a bit of a dilemma right now, there definitely seems to be an issue with frame times; 40 FPS doesn't have the same smoothness that 40 FPS does on other similar servers.

Immediately after the split, things were running a lot smoother, and it seems that the newly developed HUDs and some other features have meant that performance has taken a considerable hit. You could consider it a major step down, when this should be the opposite if anything.
Okay, so. I did do a dev-blog on optimisation, which you can find here, however I'll go over and summarise again.

CityRP has roots in RP communities from 2006/2007. That's 11 years of development, in both the lua base, C APIs, knowledge of development and others. There is bad code which needs to be removed, re-written or replaced. I've seen code based on Applejack, Clockwork, DarkRP, each in their own code styles with their own advantages and disadvantages.

The codebase also currently contains upwards of a thousand files which would need to be examined, rewritten, updated etc. Each of those can take hours to do, for minimal increases in FPS, and of course, doesn't include serverside files.

As Jono said, rewriting the gamemode currently is an impossibility due to a lack of staff, applicable skills and time.

Yes, earlier updates had a focus on short-term impact over longer-term sustainability. However, future updates, plus our focus on optimisation aim to change that.



(Apr 28, 2018, 07:59 PM)Daley Wrote: [ -> ]Yeah. Optimization is wank. Kinda feel like we need to scrap the gamemode and build it up from its core, rather then adding stuff onto it.

At the current time, with current staffing level, this is impossible.



(Apr 28, 2018, 08:02 PM)Quest Wrote: [ -> ]With this amount of revenue:
[Image: G8H1tMH.png]
Can't LL make posts on GMOD store looking for Dev's? I mean, if we are gonna build a new game mode it's gonna take a lot of work from quite a few people.

I'm unsure how much I can make public. However, a lot of that money is already budgeted. There's also the trust issue, since they'd require access to the entire codebase. Where our current development team have worked through the process for a long time, they are essentially untrusted.



(Apr 29, 2018, 12:42 PM)Gamerpro2266 Wrote: [ -> ]Just little thing like media player know issue to causing lag/freezing so why don't devs disable it so we can't spawn it in.

It's being looked at. However, our arms are somewhat tied by the processes we have to go through.



(Apr 29, 2018, 04:15 PM)Blazing Wrote: [ -> ]Yeah, it's things like these and the laggy F1 menu which completely ruin the gameplay. Developers need to fix what they currently have rather than add more things which they may also need to fix.

The F1 menu is being looked at currently.
Can potentially consider an alternative fund, which if actually supported I can cost up and take quotes to essentially get an outside contractor to rewrite much of the code - but of course with contractors not willing to work for cents on the dollar, it's going to be rather expensive. Likely multiple K if outside. Then comes the aforementioned issue with security, which means that not everyone whom could potentially work on the gamemode can - ultimately if our current gamemode is leaked then our value as a business, as a community would be treading on very thin ice.

There's not many solutions to this problem to be honest, and it largely comes down to priority. Equally the community (as a whole) may reach out and say go for it now, but in 6 months time with no new content and some bugs causing potentially major issues for day-to-day gameplay, the likelihood of our playerbase being remotely stable is fairly low. That twinned with revenue impacts of having the lack of updates of summer (historically our best season for income, and largely helps further developments for the remainder of the year), would result in a negative financial impact for the server. This would ultimately place the future runnings in danger just from a financial aspect, not discounting future cashflow that would also be lessened by the inevitable decline in the playerbase. 

I hope this makes sense, but a decision on priority of optimisation was made laterally thinking. Ultimately the gamemode really does need optimisation, but it is playable in it's current state. The frustrations from getting shit FPS whilst playing at this stage can't really be mitigated. 

So real options are:
Alternative fund raising from community separate from normal membership system (unlikely to be popular of course.)
Focusing on optimisation on a stage by stage basis (current stance) - Mixture of content development and optimisation. (Effects are marginal individually, and as more content is added could potentially reverse the increase in positive performance),



If anyone has any other thoughts to this, please do contribute. It's possible that there is something we have missed, and community feedback into this is appreciated.
 Cough cough No disclosure agreement Cough cough
(Apr 30, 2018, 07:32 PM)Quest Wrote: [ -> ] Cough cough No disclosure agreement Cough cough

I think the point is that it can be difficult to prove where leaks came from, and companies must be willing to legally act upon broken agreements, which would be costly and time-consuming to do.
(Apr 30, 2018, 06:39 PM)Jono Wrote: [ -> ]Can potentially consider an alternative fund, which if actually supported I can cost up and take quotes to essentially get an outside contractor to rewrite much of the code - but of course with contractors not willing to work for cents on the dollar, it's going to be rather expensive. Likely multiple K if outside. Then comes the aforementioned issue with security, which means that not everyone whom could potentially work on the gamemode can - ultimately if our current gamemode is leaked then our value as a business, as a community would be treading on very thin ice.

There's not many solutions to this problem to be honest, and it largely comes down to priority. Equally the community (as a whole) may reach out and say go for it now, but in 6 months time with no new content and some bugs causing potentially major issues for day-to-day gameplay, the likelihood of our playerbase being remotely stable is fairly low. That twinned with revenue impacts of having the lack of updates of summer (historically our best season for income, and largely helps further developments for the remainder of the year), would result in a negative financial impact for the server. This would ultimately place the future runnings in danger just from a financial aspect, not discounting future cashflow that would also be lessened by the inevitable decline in the playerbase. 

I hope this makes sense, but a decision on priority of optimisation was made laterally thinking. Ultimately the gamemode really does need optimisation, but it is playable in it's current state. The frustrations from getting shit FPS whilst playing at this stage can't really be mitigated. 

So real options are:
Alternative fund raising from community separate from normal membership system (unlikely to be popular of course.)
Focusing on optimisation on a stage by stage basis (current stance) - Mixture of content development and optimisation. (Effects are marginal individually, and as more content is added could potentially reverse the increase in positive performance),



If anyone has any other thoughts to this, please do contribute. It's possible that there is something we have missed, and community feedback into this is appreciated.

It's frustrating that the argument being used against performance optimisation is that it would stop updates, because I think the updates have been quite disappointing in impact, meaning a lot of this time has been lost.

You could argue that a lack of updates would drive away players, but there hasn't been a major update for a while now. These small, 'cheap and cheerful' updates create hype for perhaps a week or two at most to increase the player base temporarily, but they don't seem to have a significant impact in the long term. A lot of new weapons have been added, but they have a negligible impact as the majority of players will always just use the 'best', or most cost-effective weapon.

Something which Limelight could probably do is polishing the in-game experience as a whole.

To my eye, the user interface is a pretty terrible attempt at mimicking a Windows 10 theme, with inconsistent design, and a poor, outdated colour scheme. Menus feel clunky, and it is obvious that they were created by different people with different visions.

It seems that updates are often rushed out, resulting in completely dead features like the Stock Exchange, which was released and then abandoned very quickly.

There are a lot of vehicles which are pretty useless due to how awful they are to handle.

Very little foresight was done with regards to how big of a change a switch to Rockford would be, resulting in the majority of the map being a complete dead zone, and very little passive roleplay due to a lack of locations where players' roleplays can actually be seen.

The issue of an inactive staff team who are over-reliant on a few newer staff members has been discussed for a long time now, with little signs of movement. Bolder decisions need to be made.
(Apr 30, 2018, 07:42 PM)Blazing Wrote: [ -> ]
(Apr 30, 2018, 06:39 PM)Jono Wrote: [ -> ]Can potentially consider an alternative fund, which if actually supported I can cost up and take quotes to essentially get an outside contractor to rewrite much of the code - but of course with contractors not willing to work for cents on the dollar, it's going to be rather expensive. Likely multiple K if outside. Then comes the aforementioned issue with security, which means that not everyone whom could potentially work on the gamemode can - ultimately if our current gamemode is leaked then our value as a business, as a community would be treading on very thin ice.

There's not many solutions to this problem to be honest, and it largely comes down to priority. Equally the community (as a whole) may reach out and say go for it now, but in 6 months time with no new content and some bugs causing potentially major issues for day-to-day gameplay, the likelihood of our playerbase being remotely stable is fairly low. That twinned with revenue impacts of having the lack of updates of summer (historically our best season for income, and largely helps further developments for the remainder of the year), would result in a negative financial impact for the server. This would ultimately place the future runnings in danger just from a financial aspect, not discounting future cashflow that would also be lessened by the inevitable decline in the playerbase. 

I hope this makes sense, but a decision on priority of optimisation was made laterally thinking. Ultimately the gamemode really does need optimisation, but it is playable in it's current state. The frustrations from getting shit FPS whilst playing at this stage can't really be mitigated. 

So real options are:
Alternative fund raising from community separate from normal membership system (unlikely to be popular of course.)
Focusing on optimisation on a stage by stage basis (current stance) - Mixture of content development and optimisation. (Effects are marginal individually, and as more content is added could potentially reverse the increase in positive performance),



If anyone has any other thoughts to this, please do contribute. It's possible that there is something we have missed, and community feedback into this is appreciated.

It's frustrating that the argument being used against performance optimisation is that it would stop updates, because I think the updates have been quite disappointing in impact, meaning a lot of this time has been lost.

You could argue that a lack of updates would drive away players, but there hasn't been a major update for a while now. These small, 'cheap and cheerful' updates create hype for perhaps a week or two at most to increase the player base temporarily, but they don't seem to have a significant impact in the long term. A lot of new weapons have been added, but they have a negligible impact as the majority of players will always just use the 'best', or most cost-effective weapon.

Something which Limelight could probably do is polishing the in-game experience as a whole.

To my eye, the user interface is a pretty terrible attempt at mimicking a Windows 10 theme, with inconsistent design, and a poor, outdated colour scheme. Menus feel clunky, and it is obvious that they were created by different people with different visions.

It seems that updates are often rushed out, resulting in completely dead features like the Stock Exchange, which was released and then abandoned very quickly.

There are a lot of vehicles which are pretty useless due to how awful they are to handle.

Very little foresight was done with regards to how big of a change a switch to Rockford would be, resulting in the majority of the map being a complete dead zone, and very little passive roleplay due to a lack of locations where players' roleplays can actually be seen.

The issue of an inactive staff team who are over-reliant on a few newer staff members has been discussed for a long time now, with little signs of movement. Bolder decisions need to be made.

I agree with pretty much all you have said - and communication between developers internally is an issue which has been reoccurring since even the FL days. There have been attempts at management positions in the past which would mitigate much of the issues above - especially consistency. The example of the stock exchange highlighted inefficiencies within the team. This issue has been covered in the past, but the major problem with it was that is was released too early. Paul and myself both spoke about this at the time, saying both it's incomplete and it requires further updates (which are still yet to come). This was released to provide 'content' in a then lull. I think it highlights the issues surrounding updates, that are often ill thought out or rushed. 


More emphasis needs to go into planning future updates, to incorporating previous updates into it (so systems are built upon and expanded) and to maintaining themes better.

I'd argue it isn't the inefficiency of the team, but of the method as a whole. There remains very little management of developers relative to what it could be. Current system (simplified) is essentially Get given task > Get given budget > Get rough specifications. > Create.

I personally have pushed for more constraints, but the issue is enforcing it. When people are working at times when 'management' are unavailable then it simply becomes a hassle, and previous attempts at this has failed for that reason. 

 
Perhaps you guys could expand upon this further. It's not exactly my area to cover, and so my knowledge of it is limited and skewed from a 'business' perspective.
Pages: 1 2