-
Posts
2.623 -
Joined
-
Last visited
-
Days Won
134
Everything posted by Itms
-
A new git-based development environment
Itms replied to Itms's topic in Game Development & Technical Discussion
No, I want everyone to be able to keep commenting on open diffs, for instance for posting updates such as "I opened a PR for this diff at the following address..". It is important not to break current work when launching the migration. I believe my fix will consist of blocking the diff upload URL directly in the web server config, but I'll have to test and see whether that blocks arcanist upload through the API... Well maybe I'll just block the API for security reasons. No! That's the beauty of it! (yes I'm going to blow my own horn quite a bit in this thread, sorry). Forks do not duplicate LFS storage. So every fork of 0 A.D. only weighs 100MiB. Yes, if forks don't count as we seem to have discovered, I'll keep the limit at 0 repos, it's better. I'm more worried about malicious software than forks... (also we need to stop using the word "fork" in that sense if we start using gitea... I saw that but I think you didn't use the correct tools at all. I'll get back to you when I actually start working on this. -
A new git-based development environment
Itms replied to Itms's topic in Game Development & Technical Discussion
Yes, I am hesitating between letting new accounts create garbage repositories, and having to manually approve any new contributor. I chose to set the default repo limit to 1. But it looks like forks don't count? If that's the case, I could set the default to 0 to let new contributors fork and contribute: testing this now. In any case, I set the limit to 5 on both your accounts. What is the output of git remote -v? This is because the commit author's email does not match the PoppaSmurf account email. You can use secondary email addresses in your account for that. I wrote down that I have to document it. No, please post everything here, I'm following. And this is just an unofficial PoC for now, please don't report bugs on Trac. -
Hi everyone, For a few years now we have pondered whether git would be the right VCS for the development of 0 A.D. One of the main selling points of git is the ability to create numerous branches for parallel development of features and bugfixes. Several popular platforms (Github, Gitlab.com, ...) leverage this to provide a feature-packed development environment, where people can contribute, discuss, review, and test patches. Historically, the development of 0 A.D. has been performed using SVN, which is a bit old... but suits our needs in a number of ways, already discussed elsewhere. We are using Phabricator to supercharge SVN with a review and CI/CD platform, but alas, Phabricator has been abandoned by its developers. In any case, a lot of contributors in the past couple of years have expressed disappointment with the peculiarities of Phabricator. Thus, we have discussed finally moving to git, without any strong urgency or hard opinions on the matter. I have proposed myself to set up a migration path and a new development environment for 0 A.D., and I am proud to present it to you folks today. I have started working on this "for real" more than a year ago, and started dedicating all my "0 A.D. time" (which has been very scarce) on this project at the end of Spring 2023. It is still, unfortunately, very much a work-in-progress, but now is the time to reveal it and receive feedback. Ideally, I would like to collect feedback from the community, finish the CI/CD system, and fix bugs, over the course of the spring, with the aim of performing the actual migration, if the community wishes to perform it, during the summer. As always, delays should be expected. It is worth noting that personal changes in my life/work balance will give me more free time after the summer. Thanks in advance for the feedback you will provide Presentation of the Proof of Concept I am self-hosting the services for the duration of the tests, so that I have full control and do not divert resources from WFG. All URLs are under itms.ovh, which should eventually become wildfiregames.com Email does not work on this Proof of Concept! I have no will to setup email and I certainly don't want to spam anyone with tests. The services are not updated automatically: the full migration takes around 48h and necessitates some human input. The PoC I am presenting was generated from scratch the past two days. I will update stuff from time to time, when I fix bugs or when I'm bored, but don't expect the PoC to follow the actual development of the WFG services. Please test as many things as you want and don't hesitate to try to break things! Now is the time to make sure I didn't forget anything. All the data sent to the PoC will be wiped out whenever I re-migrate the services, and of course whenever the actual migration happens. Please feel free to play around all this. The services (this will be regularly updated) - gitea.itms.ovh The development platform. This is an instance of Gitea, a self-hosted lightweight alternative to Gitlab/Github. If, in the far future, we want to stop self-hosting stuff, Gitea is compatible with Github features to allow for easy migration. The git repository is at wfg/0ad. Commit messages were reformatted, contain the original SVN revision, links to other commits are preserved as much as possible. The HEAD revision of the main "trunk" branch is the HEAD of the SVN repo. If you wish to use the git repository for development, you must, for now, use the "future" branch, which will be merged to trunk upon the migration. All Gitea users were imported from Trac. Since email does not work, if you want to login, shoot me a DM and I'll send you a password. All Trac tickets are imported at wfg/0ad/issues. The Trac wiki is imported at wfg/0ad/wiki. I tried to self-document the PoC as much as possible, so please read the updated pages, especially BuildInstructionsGettingTheCode and BuildAndDeploymentEnvironment. The FAQ is defaced beyond readability because of its formatting peculiarities, work is needed, my apologies to everyone who worked hard on the visuals of the Trac page... - trac.itms.ovh A read-only copy of Trac, upgraded to the latest release. This serves as a reference, and can stay online as long as needed. See below for the redirect tool. - code.itms.ovh A registration-disabled copy of Phabricator, upgraded to the latest version (RIP). All the inactive accounts were deleted, especially the dormant spam accounts. We need to keep all the discussions on patches and commits online, however, Phabricator is now a security liability. I disabled the API access as well as the possibility to upload new diffs or files, and, in the future, I might make it read-only. I will consider migrating to Phorge (the community-maintained fork of Phabricator) when they officially support PHP8, which will allow us to stop using a deprecated version of PHP. However, migrating to Phorge does not mean we will start using Phabricator again. - svn.itms.ovh The old and new SVN repositories. This holds the current ps repo (which will stop receiving commits after the migration), the audio and art sources (which will keep working as-is), the new libraries repos for precompiled Windows and for bundled libs, and most importantly the new nightly-build repo. The nightly build can be used by anyone to test the latest development version. Please read NightlyBuild if you want to know more. - ariadne.itms.ovh Ariadne is a small redirect tool I wrote as a drop-in replacement for Trac or Phabricator when/if we decide to drop them. A lot of links to Trac exist on the Internet. You can follow Trac-like paths on Ariadne to find the relevant content. Each Trac page displays a link to the associated Ariadne path. For instance : A ticket https://ariadne.itms.ovh/ticket/666 A wiki page https://ariadne.itms.ovh/wiki/Manual_Settings A SVN changeset https://ariadne.itms.ovh/changeset/28056 A Phabricator commit page https://ariadne.itms.ovh/rP28056 A file in the Trac browser https://ariadne.itms.ovh/browser/ps/trunk/source/test_setup.cpp Ariadne also provides a nice page for knowing commit correspondence, just use `rXXXX` as path: https://ariadne.itms.ovh/r28056 https://ariadne.itms.ovh/r28000 Enjoy! And see you soon for regular updates
- 176 replies
-
- 14
-
-
-
Hello! I have just set up a mitigation attempt against the DoS attacks. Let us see if it holds over time, if it does, I'll close the ticket. Thanks for your patience PS. News are coming soon about the migration project, but it's unrelated to the attacks on Trac (the mitigation I am setting up will have to be kept in the future)
-
Vulkan - new graphics API
Itms replied to vladislavbelov's topic in Game Development & Technical Discussion
Done, with some delay. Sorry for the inconvenience! -
Vulkan - new graphics API
Itms replied to vladislavbelov's topic in Game Development & Technical Discussion
Oh, it's entirely my fault. I'll restore those. Thanks for the ping -
Hello Stan. I know all too well the feeling of not being able to carry on anymore, despite wanting to. You have been an extraordinary leader and the best successor I could have had when I decided to step down. You should indeed have absolutely no regrets, including in this decision of stopping and focusing on yourself and your health. Others have worded it perfectly during these ten past days: thank you for making 0 A.D. the best game that exists. I am certain that, thanks to your work, the project will endure.
-
Good morning. We develop for fun the game 0 A.D., which is a strategy game in which multiplayer is an essential component. However, the childish and toxic behavior of a minority of lobby players has always been an issue and a cause of distress for developers. I see with disgust that this continues to be the case. I suppose it cannot be avoided, since professional game developers also face a lot of verbal abuse from their players, but unlike them, we do not receive compensation for our work. Thus, it should be expected that most WFG developers, especially me, are not aware of the daily developments in the MP community, and are not interested in knowing more about them. Since a few days, I have been receiving complaints from several accounts, who harassed me and other devs in order to get Norse_Harold removed from his position. I have also been added to a conversation about one specific offender, in which Norse_Harold has provided convincing data backing his decision. There are probably other discussions I am not aware of, I am merely giving the context in which I write this post. The only complaint I agree with is the need for transparency around the rules (currently materialized as a draft Code of Conduct, which is not yet published). This is the team's fault for not publishing this CoC in a timely manner. For the record, Norse_Harold has been the one pushing the team for a publication, he does not withhold the CoC on purpose, quite the contrary. Sadly, we in the development team are notoriously inefficient at publishing rules, terms, or legal stuff. It is our fault that rules applied to the community are not clearly communicated and make moderation appear arbitrary. However, this does not justify the current situation. The method used by players to denounce the alleged abuse (spamming devs with copies of the same message, childish comparisons between totalitarian regimes and a silly video game) are jerk methods (not to say extremely cringe-worthy) which are just pushing me into backing the moderators. By the way, there are several moderators with identical powers. I heard no complaints of Norse_Harold alleged power trip from his fellow moderators. I just see the current wave of copy-pasted criticism as a concerted attack towards the most active and efficient moderator. I must say I am concerned about the variety of back channels used to harass people (including me during a weekend I wanted to take for myself...) If you are temporarily blocked on the lobby or the forums, just close your computer and go touch some grass. Or fire up a different game if you have no outside life, which is OK. Opening Insta or Discord to harass, complain, and start a concerted attack is gross misbehavior. In my opinion, this extends to what I read about the use of Element: while I find the idea of restorative justice extremely interesting in principle, I find it unhealthy to actively reach out to offenders, using different platforms, to burden them with injunctions. I would prefer to push people into disengaging from the community for a while and, I insist, going to touch some grass. This is the last input I deign to give in this thread, as I have more important work to do on 0 A.D., including helping to publish the CoC.
- 56 replies
-
- 10
-
-
-
-
Alpha 27 Pre-release/Release Candidate Build Testing
Itms replied to Stan`'s topic in Game Development & Technical Discussion
With enabled validation, the flickering still happens. I don't know where I should look for debug output. Graphics-related, I only saw this in stdout: OpenGL | notification: other source: the API id 131185: Buffer detailed info: Buffer object IndexBuffer (Default, 2) (bound to GL_ELEMENT_ARRAY_BUFFER_ARB, usage hint is GL_STATIC_DRAW) will use VIDEO memory as the source for buffer object operations. and this in the mainlog: Info when compiling shader 'shaders/glsl/fxaa.fs': 0(618) : warning C7555: 'varying' is deprecated, use 'in/out' instead 0(626) : warning C7533: global variable gl_FragColor is deprecated after version 120 Info when linking program 'shaders/glsl/simple.vs'+'shaders/glsl/fxaa.fs': Fragment info ------------- 0(618) : warning C7555: 'varying' is deprecated, use 'in/out' instead 0(626) : warning C7533: global variable gl_FragColor is deprecated after version 120 With this change, still with validation, the flickering does not happen. The logs contain the same things as above. Thanks for the report. I filed a ticket at #6807 because I think it is a regression from A26 for mac users. In the worst case, this workaround of disabling TLS exists. This is expected, as some game settings cannot be changed during a game. However, the situation you describe is confusing: the user should have the information that those settings are unavailable. I also filed a ticket #6808, but it will not be fixed for A27. -
Improved Farming Animation / Mauryan Palace
Itms replied to Gurken Khan's topic in Gameplay Discussion
Splitted from including the start of the discussion about the Mauryan palace. -
Alpha 27 Pre-release/Release Candidate Build Testing
Itms replied to Stan`'s topic in Game Development & Technical Discussion
In the options, Network/Lobby, is TLS Encryption activated? Does toggling it fix the issue? -
Alpha 27 Pre-release/Release Candidate Build Testing
Itms replied to Stan`'s topic in Game Development & Technical Discussion
With updated NVIDIA drivers (here is the new userreport after the upgrade: userreport_hwdetect (2).txt), the flickering stills happens with the RC or with a clean SVN. -
Alpha 27 Pre-release/Release Candidate Build Testing
Itms replied to Stan`'s topic in Game Development & Technical Discussion
I am able to reproduce with SVN; and setting this to false does fix the issue Note: with the change, when starting the game, it "blinks" once with a black screen (during something like 0.1 second), I assume that's some kind of buffer being updated (it isn't an issue at all, just figured I'd tell you in case this gives you information about what happens in the code). -
Don't hesitate to report them The full threads are easy to spot, small comments like this can fly under our radar if we are not participating in the thread.
-
Alpha 27 Pre-release/Release Candidate Build Testing
Itms replied to Stan`'s topic in Game Development & Technical Discussion
Hi Vlad, here is my userreport: userreport_hwdetect.txt I am not able to record the issue using OBS Studio: indeed, whenever the flickering happens, the frames captured by OBS Studio are blank. The capture shows the screen only when the flickering has stopped. Instead, here is a video of my screen using my phone. VID_20230520_000647.mp4 You can see that a few square parts of the game view are flickering. In this pathological example, a part of the dialog is missing, removing a button. The flickering always stops without intervention after a couple of seconds, then the game looks normal. The flickering doesn't always hit the same parts of the screen. I believe the issue only happens in fullscreen, but I'm not sure. It can be triggered by toggling fullscreen with Alt+Enter, but I found that the most reliable way to reproduce the issue was to enable fullscreen in the options. With this option enabled, flickering will happen at game start in the majority of cases. Hope this will help you. -
Thread for sharing forbidden materials
Itms replied to Yekaterina's topic in Introductions & Off-Topic Discussion
This has no link with 0ad, and the thread will go overboard very quickly. Regardless of censorship, copyright infringement is a thing. Those ebooks are not free, and your professors didn't agree for their course notes to be shared here. -
Alpha 27 Pre-release/Release Candidate Build Testing
Itms replied to Stan`'s topic in Game Development & Technical Discussion
@vladislavbelov I can also reproduce the flickering issue with A27 using the OpenGL backend. Please let me know if I can give useful information to debug this -
I really like Agni as that just restarts the alphabet while keeping the thematic meaning I also voted in favor of Hephaestus but I might be biased as my profile picture suggests
-
The fix was committed! Thanks @s0600204 and the other investigators
-
I confirm the fix works. It is also the best fix IMO because SpiderMonkey will indeed replace distutils by sysconfig in the upcoming ESR version So I included that in D4893, I am just waiting for Jenkins to make sure it passes CI and I'll commit it later tonight.
-
Great, I'll wait for it and we can decide between it, and the hack from SM and my hack idea
-
Hi here! Sorry I didn't post here, @s0600204 thanks for the parallel investigation So basically I imported a fix from SM that fixes the extra "local" in paths. It is not as clean as the fix in your patch, but it is what was included in SM, so better follow them. However, the remaining issue is that on Debian, distutils proposes a path ending with "dist-packages" while it should be "site-packages" where things are actually installed. This is the part I don't really understand. If you have any idea @s0600204 I'd be interested, else I'll ask a Debian maintainer. In the worst case, it is easy to hack around this by changing "dist" by "site", the same way we remove "local/" from the path.
-
[localization] project languages
Itms replied to Nescio's topic in Game Development & Technical Discussion
Hi Yekaterina, please contribute those improvements on Transifex so that they get included in A25. In the meantime, you can make a mod with your translations (you can take apart the official zh-lang mod, replace the po files and rezip it) and upload it to mod.io as an unofficial zh mod, I'll gladly sign it! The hotkey page was not translated in A24, this has been fixed and it will be translated in A25 The Atlas editor is not translated yet (apparently we don't have a ticket on Trac for this, or I couldn't find it). -
[localization] project languages
Itms replied to Nescio's topic in Game Development & Technical Discussion
I finally took the time to regenerate the mods (using translations from r25014). I actually regenerated all four CJK mods, because I had forgotten the *-engine.po files in all of them So there you go. -
[localization] project languages
Itms replied to Nescio's topic in Game Development & Technical Discussion
I'll see if I have time for this. I'll use the po files pulled by the upcoming i18n update, which will be the most recent one using the version of the pot included in A24.