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
(Apr 30, 2018, 09:13 PM)Jono Wrote: [ -> ]
(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. 

"Faustie" doctor_internet
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.

Aye, there is an issue in that perspective, where a large number of poorly planned things were pushed out. We're reducing that now with some new internal processes to ensure higher levels of planning (at least, for larger projects).

I can't go into much more detail, but may be able to.

im also on a membrane keyboard and my fingers are crying.
You got people who want to work on the code here at LL.  Sadly, some of them get downvoted because they are confrontational and/or very direct.

 

I keep you up to speed on what I am learning in college, pretty much as I learn it.  With a little help, I could work on lua.  Shell scripting in linux and .java are both based off C like lua.  The only real difference is syntax from what I can tell, which isn't so bad when you understand how things work logically to the computer.  I'm not going to bother with a contributor app till someone comes back to me and says to put one up after how the last one went down.  The social voting (which I'm not even sure if it counts) is a shit-show for contributor applications.  Still wrapping my mind around how people care more about social status rather than getting code work done, but I've been struggling to keep on an acceptable level for months now.


I can't be the only one who's tried and been rejected, but it's kinda insulting to see things like "we don't have enough" when I've actually tried to lend a hand.  Still willing to contribute my time to help with coding, have learned .java and linux since my last app.

Also I still think that this GM would run better off a Dark RP core, where there would be far less work getting content to function properly.  Clinging to this ancient GM and having to constantly try to clean up expired code while also trying to rewrite everything so you can have it, its obviously not the most successful idea ever.  Don't get me wrong, props to the team for keeping it going, but doing it at this point seems more out of pride and maybe spite, than for the benefit of the game or players.


And before you kids start ranting about "dark rp... ew," the GM is a series of logic statements.  The UI, Menu, Weapons, Jobs, Database, and everything else can be put onto that core (with some work in some cases, less than you'd imagine considering most of the content was re-written from dark rp) to make the same game really.  Haven't found one piece of content or functionality that City RP has, that cannot be reproduced on a stronger, more developed core.

Lastly, while city rp has been around for many years, the development and refinement that has gone into that was stagnant till LL opened.
(May 1, 2018, 08:54 AM)Jokhah Wrote: [ -> ]You got people who want to work on the code here at LL.  Sadly, some of them get downvoted because they are confrontational and/or very direct.

Aye. Unfortunately developers, and somewhat contributors are expected to uphold the image of the community. Whilst being blunt isn't a bad thing (as the rest of the team knows, I'm the bluntest motherfucker there is here), sometimes being blunt can be misconstrued as being aggressive or what-have-you. However, some fairly recent internal changes have minimised the issues from that.

(May 1, 2018, 08:54 AM)Jokhah Wrote: [ -> ]I keep you up to speed on what I am learning in college, pretty much as I learn it.  With a little help, I could work on lua.  Shell scripting in linux and .java are both based off C like lua.  The only real difference is syntax from what I can tell, which isn't so bad when you understand how things work logically to the computer.
The fundementals of most languages are the same, when you get down to it. Learning to code is 75% learning how to think, rather than how to write.

(May 1, 2018, 08:54 AM)Jokhah Wrote: [ -> ]I'm not going to bother with a contributor app till someone comes back to me and says to put one up after how the last one went down.  The social voting (which I'm not even sure if it counts) is a shit-show for contributor applications.  Still wrapping my mind around how people care more about social status rather than getting code work done, but I've been struggling to keep on an acceptable level for months now.
See above response (post a new one).

(May 1, 2018, 08:54 AM)Jokhah Wrote: [ -> ]I can't be the only one who's tried and been rejected, but it's kinda insulting to see things like "we don't have enough" when I've actually tried to lend a hand.  Still willing to contribute my time to help with coding, have learned .java and linux since my last app.
I agree, it is insulting. However, at the time policy was different. ¯\_(ツ)_/¯ Afraid there's not much more I can say.

(May 1, 2018, 08:54 AM)Jokhah Wrote: [ -> ]Also I still think that this GM would run better off a Dark RP core, where there would be far less work getting content to function properly.  Clinging to this ancient GM and having to constantly try to clean up expired code while also trying to rewrite everything so you can have it, its obviously not the most successful idea ever.  Don't get me wrong, props to the team for keeping it going, but doing it at this point seems more out of pride and maybe spite, than for the benefit of the game or players.
Who knows. DarkRP is better documented, but CityRP has a number of systems built into its core which DarkRP does not. In my opinion, it would be about the same amount of work in the long run to get it working on DarkRP than to rebuild from the core up.

(May 1, 2018, 08:54 AM)Jokhah Wrote: [ -> ]And before you kids start ranting about "dark rp... ew," the GM is a series of logic statements.  The UI, Menu, Weapons, Jobs, Database, and everything else can be put onto that core (with some work in some cases, less than you'd imagine considering most of the content was re-written from dark rp) to make the same game really.  Haven't found one piece of content or functionality that City RP has, that cannot be reproduced on a stronger, more developed core.
Agreed, however it's the time that it would take to re-write all the core plugins, libraries, functions etc, so that they all work as they were before, on the DarkRP base.

(May 1, 2018, 08:54 AM)Jokhah Wrote: [ -> ]Lastly, while city rp has been around for many years, the development and refinement that has gone into that was stagnant till LL opened.
¯\_(ツ)_/¯

(Apr 28, 2018, 04:57 PM)Blazing Wrote: [ -> ]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.
I can agree that the quality is mixed. Some are really low quality, some are rather high. The issue is the varience there.

(Apr 28, 2018, 04:57 PM)Blazing Wrote: [ -> ]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.
CityRP Relase Candidate
Network Updates
My own optimisation updates.

They may not be as highly noted by the community as content updates, but they are there.

(Apr 28, 2018, 04:57 PM)Blazing Wrote: [ -> ]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.
Larger updates require more planning. Our planning has been limited with a number of issues, which makes it slower. Larger updates take longer to code. There are a number of large updates being planned and worked on.

(Apr 28, 2018, 04:57 PM)Blazing Wrote: [ -> ]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.
However, we're requiring periods focusing on the optimisation of new updates, including myself being essentially dedicated to optimisation at this point.

(Apr 28, 2018, 04:57 PM)Blazing Wrote: [ -> ]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.
Frame Time = 1 / Frame Rate
However, I agree with feeling choppy. That being said, whilst on an empty HL2RP server (similar codebase), I'd only get a slight smoothing, with a ~20% increase in framerate. However, that's just my personal experience with the matter.

(Apr 30, 2018, 07:42 PM)Blazing Wrote: [ -> ]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.
So your method to resolve low-impact updates is to stop all updates? That seems somewhat counterproductive to me.

(Apr 30, 2018, 07:42 PM)Blazing Wrote: [ -> ]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.
Those new weapons were added in C&C, which itself was a major update. The last major update would be the still-ongoing REP overhaul update.

(Apr 30, 2018, 07:42 PM)Blazing Wrote: [ -> ]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.
Different people have different opinions. I personally, aisde from the sluggish initial load times, have no issue with the F1 menu or the HUD.

(Apr 30, 2018, 07:42 PM)Blazing Wrote: [ -> ]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.
Yes, we know about the Stock Exchange. A lot of bile has flown around internally because of it too. It was released too early, which has already been acknowledged by .

(Apr 30, 2018, 07:42 PM)Blazing Wrote: [ -> ]There are a lot of vehicles which are pretty useless due to how awful they are to handle.
Vehicles are bieng trimmed down.

(Apr 30, 2018, 07:42 PM)Blazing Wrote: [ -> ]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.
Unfortunately, the community voted for Rockford. That was a change dictated by the will of the community.

(Apr 30, 2018, 07:42 PM)Blazing Wrote: [ -> ]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.
This really has nothing to do with optimisation, or even development though. I'd suggest speaking to or , since they'd be in a better position to deal with those issues.
App is in.
(May 1, 2018, 10:06 AM)Doctor Internet Wrote: [ -> ]
(Apr 28, 2018, 04:57 PM)Blazing Wrote: [ -> ]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.
Frame Time = 1 / Frame Rate
However, I agree with feeling choppy. That being said, whilst on an empty HL2RP server (similar codebase), I'd only get a slight smoothing, with a ~20% increase in framerate. However, that's just my personal experience with the matter.

(Apr 30, 2018, 07:42 PM)Blazing Wrote: [ -> ]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.
So your method to resolve low-impact updates is to stop all updates? That seems somewhat counterproductive to me.

(Apr 30, 2018, 07:42 PM)Blazing Wrote: [ -> ]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.
Different people have different opinions. I personally, aisde from the sluggish initial load times, have no issue with the F1 menu or the HUD.
You're correct about the calculation of frame rate, but that formula doesn't take into account how frame time variance affects the smoothness of gameplay. This explains it quite well; frame time is a better indicator than FPS as it's more precise.

My suggestion isn't to stop all updates, but I believe that smaller updates should be limited in number, and only to be made if necessary for stability, or if the next big update cannot reasonably be released on time. Currently, it seems like smaller updates are being made as an excuse for a lack of big updates. Of course, there is a balance which needs to be hit between the two.

The comments I made on the design are highly opinionated, yes, but there are also some parts of the design which are objectively bad. For example:
- Medium/dark grey on a black background is a very poor colour scheme and shows inconsistency.
- Gradients are pretty much never good things for modern design.
- Translucency needs to look clean to work well, such as how Apple have implemented it in iOS, otherwise it looks quite unprofessional.
Pages: 1 2