bilekas 4 days ago

This is wild... PHP server with electron client.. I'm genuinely impressed. It's been many years since I worked with PHP. Back in the days before proper namespaces etc. This just blows my mind. What an incredible effort, I will definitely be helping with this project in my free time. We need more crazy projects like this!

  • solcloud 4 days ago

    thank you for kind words :)

  • fefferkorn 4 days ago

    Yeah, same,.. Real time game server written in PHP is really interessting. I also know PHP from the old days and now only from certain CMS systems, but not realtime projects. Im amazed! Nice! :)))

  • treflop 4 days ago

    You could have actually made this 15 years ago! As a kid I pretty much only knew PHP and Visual Basic so I made CLI servers in PHP (…lol)

    You could make asynchronous servers using socket_select(), which was added in PHP 4.1.

    https://www.php.net/manual/en/function.socket-select.php

    There was also a third party extension that added threads to PHP 15 years ago, although it was buggy.

  • calvinmorrison 4 days ago

    Php is basically runtime Java these days. It's so much better than ye olden days

    • ARandomerDude 4 days ago

      > Php is basically runtime Java these days

      I don't know enough about PHP to understand this comment. Can you elaborate?

      • mikeweiss 4 days ago

        I think they're just saying its a lot like Java if Java was a interpreted language and not a compiled language.

        • bilekas 4 days ago

          Might you call it JavaScript? /s

          • meiraleal 4 days ago

            Thanks God, no. PHP has the clumsiness of Java but JavaScript is cool.

peppertree 4 days ago

FYI client side is under www/assets. https://github.com/solcloud/Counter-Strike/tree/master/www/a...

There are no dependencies besides threejs. No typescript or build pipeline. Actually fun to just read the code.

  • solcloud 4 days ago

    thank you, yes like you said all client-side dependencies are "bundled" inside repository, for reading client code start.js is good starting point (https://github.com/solcloud/Counter-Strike/blob/master/www/a...), for server side starting point is server.php (https://github.com/solcloud/Counter-Strike/blob/master/cli/s...)

    • maxloh 4 days ago

      What is the reason behind wrapping code inside an IIFE (Immediately Invoked Function Expression)?

      JavaScript modules are scoped, so nothing can be accessed outside unless explicitly exported.

      FYI, you don't even need an IIFE. ES modules are block-scoped by default.

        // Instead of,
        let foo
        (function() {
          const bar = 1
          foo = bar
        })()
        // `bar` is out of scope here
      
        // You can just,
        let foo
        {
          const bar = 1
          foo = bar
        }
        // `bar` is out of scope here too
      • solcloud 4 days ago

        I guess history reasons

diggan 5 days ago

The GitHub languages thing shows it's 82% PHP, 15% JS and some sprinkles with HTML/CSS. But what is the actual client made with? Is it in a different repository? Or is it all implemented in PHP? Impressive if so.

> This is low violence game

I love this description for a game that is all about shooting others in face, planting/defusing bombs and trying to survive while being shot at.

As a side-note, has the OP ever seen a football field? :) Seems to have a bunch of crosses and other out-of-place lines, but I guess the football isn't the focus so probably matters the least :)

  • dietr1ch 5 days ago

    Well, no one says you need to shoot, maybe you can go the charisma route and convince the terrorists not to get the bomb down.

    • no_wizard 4 days ago

      Its like a pacifist run in the old Fallout games

    • swyx 4 days ago

      ah, talk-no-jutsu, the most powerful weapon in a main character arsenal.

      • xanderlewis 4 days ago

        Erm, actually, it’s kaiwajutsu.

    • rzzzt 4 days ago

      Negotiator selected!

      • solcloud 4 days ago

        unfortunetely voice chat is currently not supported :D

  • ehnto 4 days ago

    I am not even opposed to violent videogames morally, I just wish there were more creativity in big budget gaming. One of the most interactive mediums available to society, and billions of dollars each year goes into another set of Shooty McMann goes Shooting, Guns Edition.

    Sorry, small tangent. This project is still super impressive and I have played thousands of hours of CS so it's cool to see.

    • maccard 4 days ago

      > I just wish there were more creativity in big budget gaming. One of the most interactive mediums available to society, and billions of dollars each year goes into another set of Shooty McMann goes Shooting, Guns Edition.

      This is overly dismissive, and the sort of thing I'd expect on Reddit.

      If you look at the most critically praised and fan praised AAA game of the last.. decade? It's Baldur's Gate 3. In the AAA-budget-quality space there's enough games out there released in the last few years without guns to keep you busy - Disco Elysium, Stardew Valley, Elden Ring, Minecraft, Persona, Witcher, Total War, Alan Wake(*) Stellaris are all in my "recently played" and there's no guns. Generally RPG, Strategy, racing, platformer style games avoid guns for the most part.

      You've got AAA games that have guns in them that aren't focused on shooting - Xcom, Fallout come to mind where the guns are just a visual representation of a dice roll.

      I know you mentioned "big budget gaming", but there's oodles of small budget games to play too. Balatro, Pacific Drive, Against the Storm, Dredge, Inscryption are all games I've played this year with no guns in them.

      • xanderlewis 4 days ago

        What does AAA-budget-quality mean? Minecraft was made by one person and is still a very simple game, utterly unlike the ‘genuinely AAA’ shooters parent was talking about. Same with Stardew Valley and probably several of the others you’re talking about.

        Fallout might not be ‘focused on shooting’, but it still has the look of a typical FPS game. It’s as if game developers have mostly converged on a standard game design. There are exceptions, but there’s still so much untapped room to be more creative.

        I think it is true that most money in the games industry goes into making games that heavily feature guns. Films are the same; even the seemingly non-violent premises apparently have to involve constant peril and frequent (gun) violence. Maybe it’s a particularly American thing.

        • jorvi 4 days ago

          Yup. I agree with the premise of the parent post, but they A) mistook the most critically acclaimed game, it being “The Last of Us” and B) named a whole slew of “indie” titles.

          • maccard 4 days ago

            > they A) mistook the most critically acclaimed game, it being “The Last of Us”

            I think there's some subjectivity in most critically acclaimed game, and decade. TLOU Part 2 [0] is "slightly" lower than BG3 [1] (to the point you're well into subjectivity), and the remaster [2] technically falls out of the decade criteria by 6 months. I think at the point you're arguing about trying to objectively clarify the best subjective option.

            > named a whole slew of “indie” titles.

            I named a whole slew of indie titles (in a separate category to things like BG3, Elden Ring, Withcher, Total War, but nonetheless) because the boundaries are fuzzy. Do you mean indie budget (Stardew valley definitely falls into that, but it's an incredibly polished experience, to the level of many AAA games), do you mean "a small team" like Dave the Diver [3], do you mean no publisher - Star Citizen is an indie game by that metric, with it's "indie" budget of $700 million. Or CDPR - they _are_ a publisher, funding their own games (that meet the no-guns criteria too IMO - Cyberpunk 2077 has guns but playing it like a third person shooter isn't really how the game is set up).

            I deliberately used the "AAA-budget-quality" term to try and differentiate that; it's subjective (like all art and art reviews are), but for the most part, people (in my opinion) are talking about differentiating "production quality" when they talk about AAA and non-AAA games. First and second party studio games like Zelda, Mario, Crash Bandicoot, had small development teams and budgets that make many definitely-PC-indie games (e.g. Hades) look like blockbusters in comparison.

            [0] https://opencritic.com/game/8351/the-last-of-us-part-ii [1] https://opencritic.com/game/9136/baldurs-gate-3 [2] https://opencritic.com/game/234/the-last-of-us-remastered [3] https://www.videogameschronicle.com/news/keighley-weighs-in-...

        • maccard 4 days ago

          > What does AAA-budget-quality mean?

          It was a shortcut around the points you made. Minecraft _was_ made by one person, and is now a team of who knows how many people for the best part of a decade. Stardew valley I think is a great example where it's an incredibly polished experience to the point that the polish level is up there with AAA games.

          > and probably several of the others you’re talking about.

          And you're ignoring the game of the _decade_ - a $100m follow up to one of the most loved games of all time.

          > Fallout might not be ‘focused on shooting’, but it still has the look of a typical FPS game.

          You mean it has a gun in it, and it's in first person? If that's your gauge for a shooter game then I don't think you're informed enough to have a discussion on this topic. A game or movie with nudity in it isn't pornographic any more than a game with a gun in it is a shooter.

          > It’s as if game developers have mostly converged on a standard game design.

          You're just spouting nonsense now. Here [0] is a list of the top games of this year. Only one of the top 10 is a shooter (And it's a critically acclaimed final expansion to a 7 year old game that has shown how to do a fun shooter). If you go back to 2023, you'll see the same.

          > I think it is true that most money in the games industry goes into making games that heavily feature guns

          "There are lies, damn lies, and statistics". Of course mnost money goes into games that heavily feature guns; because if you look at absolute spend on development and marketing costs, pretty much everything is going to be dwarfed by Call of Duty. Meanwhile you have Baldur's Gate 3 which again, is probably the best received game of the decade, Cyberpunk (one of the most expensive games made), Star Citizen (lol), Genshin Impact - all of which are _not_ based on guns (but may contain them to some extent) with mind numbing amounts of money being spent on development.

          [0] https://opencritic.com/browse/all/2024/score

          • ehnto 3 days ago

            > You mean it has a gun in it, and it's in first person? If that's your gauge for a shooter game then I don't think you're informed enough to have a discussion on this topic. A game or movie with nudity in it isn't pornographic any more than a game with a gun in it is a shooter.

            I am a Fallout diehard, but you and I both know combat was the worst part of those games. Imagibe how a Fallout calibre game without combat could be fun and you might start to see what I mean. All that amazing lore, story and worldbuilding and then the only activity we come up with is combat. Snooze fest.

            This is a very subjective discussion of course.

          • xanderlewis 4 days ago

            > You mean it has a gun in it, and it's in first person?

            That's not what I meant, but even if it was I think my point stands. There are too many 'first person games with guns' in general. It's hard to imagine the possibilities precisely because the market is so saturated with monotony.

            > spouting nonsense

            By the way, your response seems unnecessarily aggressive. Sorry if you interpreted mine as such; that wasn't the intention.

            To address your list of games: it's worth observing that they all fit very neatly into categories (shooter, fighter, platformer, etc.), so I do think this shows a lack of creativity. Even within each category, there are similarities — every game seems to build on the existing idioms that have built up over the last thirty years or so, and that's without mentioning all the firearms paraphernalia and language that is standard in most big-budget games.

            But the same is true of music and film and probably everything else, so it's probably just that my taste is unusual. I'm aware of that.

            I actually think Minecraft was a good example of fresh game design — it didn't fit into any of those categories. Hell, it didn't even have much of an objective and it certainly didn't feel like a reskinned version of a thousand other games.

      • ehnto 3 days ago

        It was lighthearted, not dismissive, perhaps the same cloth. I shouldn't have specified guns I guess, combat is what I find boring, and you'll note the majority of the list of yours is violent games.

        Again, not opposed just bored. I seek out non-violent games not for the lack of violence but because they have interesting mechanics. Violence/combat is the majority of top selling games, top played games. That has been true for decades.

        Pacific Drive was a gem and the level of creativity I hope more studios to aim for. Another great example was Jusant. There is indeed no shortage of great indie games with what I am after. Sim games, farming/life games, factory/automation games, puzzle games are all great examples of non-combat genres with decent budgets too. But you do find there's usually just one or two big hitters, as it's a smaller market.

    • t0astbread 4 days ago

      If you're looking for something different in AAA shooters, try Splatoon. It's basically the antithesis to classic shooter tropes and it has a whole world of art designed around it (with fictional bands, promotional art for in-game events, etc.)

    • _proofs 4 days ago

      this is really a short-sighted and uninformed take on what games have been successful and praised by fans over the years.

      four of the most successful (perhaps iconic) games in history do not exactly meet your description in any meaningful way: baldurs gate franchise, warcraft franchise, different mmo franchises, diablo franchise.

      but let's take your description and apply them to iconic fps over the years:

      doom, ok shooty mc shooty goes shootin -- doomguy agrees. but theres a lot more to doom than just shooting.

      cs source: nah sorry tactical strategy is not shooty mc shooty goes shootin.

      quake world up to quake live/quake champions: nah sorry tactical strategy and fps-chess (duel) is not shooty mc shooty goes shootin.

      halo franchise: epic sci-fi campaign story which was differentiating at the time AND tactical strategy -- while it sorta fits your description, it also sorta bucks it in the face because it was praised for its campaign as well as its online play.

      overwatch: role-based tactical strategy.

      battle royal genre: kinda shooty mc shootin goes shooting, but on hard mode with variance and.. tactical strategy requirement.

      i mean the list goes on. reducing the surface area of FPS games historically to just some reddit meme bc it gets a lot of updoots makes me think you do not have a ton of experience playing shooters historically or otherwise (happy to be proven wrong here).

      marketing is strong.

      • ehnto 3 days ago

        My argument is basically, if your game is so good and interesting, would it stand alone without combat? Could a different mechanic have stood in its place for a more interesting, novel game?

        I have been playing FPS, guns or no guns, for 25 years. I also vehemently seek nuanced, interesting and intelligent game mechanics, and there is certainly many amazing games that fit the bill.

        I am well informed, this is just my desire and not a fact or what I think should happen.

        At any rate, the comments in defense so far have told me some of the most popular games are not shooters, and then that there are shooters with depth. No dispute there. I probably should have not been so pithy and stated it's combat in general, not shooters.

        I also make games in my spare time, so I am at least practising what I preach. I think combat is a crutch for the gaming industry, and I would love to see more mechanics be explored with the budget a typical combat focused game gets. Gimme a AAA first person puzzle explorer ala Obduction, Pacific Drive, Viewfinder. Imagine a Fallout scale narrative exploration game that doesn't require combat to fill in the gameplay.

        Cyberpunk is a fantastic story and exploration game, with interludes of stat based combat. I have spent hours just wandering the city and finding the cool hidden stories, but most 90% turn into 5 minute combat crescendos that add nothing to the story, while super obvious mechanics that would match the story go unexplored. That's more or less what annoys me, it's not a big deal I just find it a shame.

        Again, I don't exactly care what other people play or do, this is just what I want.

  • evanwalsh 4 days ago

    You can see the client code in `www`: https://github.com/solcloud/Counter-Strike/tree/master/www

    The client is a lot of JavaScript (with graphics via Three.js)

    • solcloud 4 days ago

      yes, client code is JavaScript using Three.js (https://threejs.org/) library, but since server and client is decoupled, client code can be implemented using anything, there is also php cli interactive interface, but most users prefer javascript one which is currently only one with real gui

  • solcloud 4 days ago

    yes that is correct, all code is in this monorepo, yeah I get little hyped with that animal destroying description :D for that sidenote crosses - love your note - my sense of humor is kinda weird I guess or maybe because I grow up in Europe while watching America movies with football players wearing helmets idk :D

    on more humor side there is also php cli interface (https://github.com/solcloud/Counter-Strike/blob/master/cli/c...), but unless you have fancy matrix like font in your terminal emulator you probably do not see woman in red dress laying on pitch :)

DeathArrow 4 days ago

Open source code is fine and dandy, but what games really need is open art. Most open source games struggle with the way they look and feel.

  • solcloud 4 days ago

    I agree, but being good both at programming and art is quite unique skill, then there is also whole audio category, animations,...

    • squarefoot 4 days ago

      The gaming world badly needs a central repository of art, only art (graphics, music, scenery, world maps, objects, ...) sort of a highly specialized Github. It should promote using well known file formats and structures to ease importing this or that object into a game project. And possibly allow the use of the torrent protocol to avoid clogging central servers as data files usually represent the heaviest load for a server.

NoboruWataya 4 days ago

Very cool. As an aside, it (the screenshot at least) reminds me a lot of "Extreme Paintbrawl", a game released for PC in the 90s. I used to love playing it when I was a kid. Some years later I found out that it is "considered to be one of the worst video games ever made". :D

https://en.wikipedia.org/wiki/Extreme_PaintBrawl

  • justusthane 4 days ago

    Oh man, my buddy had this game and we had a great time with it!

  • solcloud 4 days ago

    thank you! very cool, love is specific thing indeed, well we can always brawl for that rank one spot :D

josephcsible 5 days ago

Can you add a license file?

  • solcloud 4 days ago

    I guess I can, but I am not a lawyer and I don't really want to go on date with Gaben and his lawyers (date with Gabe, gooseman and Jess is ok for me), but if you have any suggestions please share

    • cAtte_ 4 days ago

      even if you were infringing on Valve's copyrights (which you probably aren't, you're just using one of their trademarks), licensing your project or not wouldn't change that at all. but more importantly, by not including a license file in your repository, you are asking everyone to assume that your project is not licensed, therefore all rights are reserved, therefore it's not actually open-source (a comment on HN is sadly not enough): https://docs.github.com/en/repositories/managing-your-reposi....

    • fragmede 4 days ago

      Please do. This is your code so you get to decide exactly how free you want it to be, but without a license, it's "source available" which means that people can't do more than look at it and say "that's nice". If you want to let other people actually do something with it, then it needs a license. I can't decide for you which one to choose, but MIT is popular, let's other people take your code as long as they say where it came from. For web projects that you want to remain free, AGPL is a license that says you can use this code, but any changes you make to it also have to be free. It's a tricky topic that this comment is far too short to cover, but it's worth a hour or two of your time to consider as what you think of as okay to with your source won't align with what everyone else might consider to do with your source.

      • solcloud 4 days ago

        I want people to contribute to it, to make it better game, with no bugs, better visuals etc., repository also contains assets that was not made me, so I guess only thing I can license is source code written in programming languages that was written only by me, idk, I should be lawyer not programmer :)

    • soufron 4 days ago

      If you need some pro bono legal help for choosing your license and avoisine trouble, just contact me :)

      • keyle 4 days ago

        That is nice of you to offer, but your profile nor this message provide any way of contacting you.

        • debugnik 4 days ago

          True, but googling soufron brings up a popular lawyer with that last name, whose social media and website use the same handle, and even has a wikipedia page. So I'm assuming he knows he's easy to find.

          • keyle 3 days ago

            Sounds good, I should rename myself to JackNicholson so you can google my authenticity and take it at face value.

            • debugnik a day ago

              Unlike linking to Nicholson's socials from your HN account, which would totally count as proof...

              We simply aren't discussing how to prove his identity, just how to contact him (or whoever he could be impersonating) when he didn't provide contact info.

      • alexander2002 4 days ago

        For some reason ur wikipedia has so many time references ending in 2015.Is it not maintained any longer or you retired?

    • solcloud 4 days ago

      source code is all written from scratch and it is free for anybody

      • JTyQZSnP3cQGa8B 4 days ago

        That’s not a valid license. Without a file or statement in the repository, I guess it’s a proprietary piece of software that people cannot legally fork.

        • account42 4 days ago

          Actully, the act of putting it on GitHub might be considered an implied license to clone and fork the project since those are normal GitHub functions. Still, an explicit open source license that also makes sure to grant those rights outside of GitHub would be better.

        • droideqa 4 days ago

          It is public domain if there is no license.

          • recursive 4 days ago

            That is not true.

            • droideqa 4 days ago

              I checked; you are right.

          • ClassyJacket 3 days ago

            The opposite is true. Even if you publish the source, if you don't add a licence, you still have full copyright and all rights to it.

      • kurisufag 4 days ago

        this may be what you're looking for

        http://www.wtfpl.net/about/

        • wyldfire 4 days ago

          Don't use that license, use something similar like MIT, BSD or Apache instead.

          • kurisufag 4 days ago

            would you mind pointing out why?

            those are very dissimilar licenses in the sense that wtfpl is basically a cute way of putting something into the public domain, while MIT et. al. do actually have (albeit minor and reasonable) restrictions on the conduct of people using the code.

      • sqeaky 4 days ago

        So this code is free!?

        So I can take it and reuse it exactly as is and claim it's my own and sell it on Steam for $60 a pop?

        So I can take it and use your name that is surely somewhere in the code and fill it with swastikas and hate speech and say that this represents your views?

        Or more reasonably since I don't see a license this is copy written reserving All Rights and anything said here is just a trap you're just waiting for me to do something cool with it then hit me with a lawsuit and take my money, right?

        But more seriously head over to the open source initiative read up on a couple of licenses and pick one. Almost any license will prevent people from using your name but let other people use the code if that's a thing you want.

        If you just want to protect your name and let people use the code for whatever even making money consider an MIT or BSD Style license.

        If you want (to protect your name and for) other people to be able to use the code but need to share their changes consider a GPL style license. This will complicate other people making money but doesn't strictly prohibit it.

        If you don't want (the previous stuff and for) other people to be able to prevent people from selling it you might want to use something like a Creative Commons non-commercial license, I won't be perfect but there are flowcharts you can follow to figure out which license works for you.

        • airstrike 4 days ago

          > So I can take it and use your name that is surely somewhere in the code and fill it with swastikas and hate speech and say that this represents your views?

          That has nothing to do with the game being free. If you dedicate source code to public domain and someone slaps swastikas on it, it doesn't represent OP's views all of a sudden

          • sqeaky 4 days ago

            It was hyperbole, exaggeration for inflated effect, unlikely but within the realm of technically poossible.

            More likely people just won't use it without a license.

        • dankwizard 4 days ago

          You've never worked in open source and it shows

      • gitaarik 4 days ago

        If you want the code to stay free you better add a free software license, that's what these licenses are made for, to preserve the freedom of the code. Otherwise others can take your code and make it propietary and add their propietary license to it.

        • account42 4 days ago

          No, without a license others are not allowed to take the code at all.

tokai 4 days ago

Still not open source many hours later after multiple people said to put a license on it. Calling something open source when its not is really not okay, and it is hurting free and open source software.

  • segmondy 4 days ago

    It is open source, the source is right there on the repo for anyone to read. It can be open source without being free software, it can be open source without having any license. If the owner has opened their code to the world to read, it's open source.

    • linsomniac 4 days ago

      It is "source available" not "open source", there's a difference. The term "open source" refers to a particular thing: https://en.wikipedia.org/wiki/Open_source

      • segmondy 4 days ago

        I was around before that wiki page was written and know exactly what open source means. I'm not going to play the double speak game on words. open source means you can read the code. period. it doesn't matter if it's free, or if it has a commercial nature or not.

        free software is software you don't have to pay money to use, it doesn't matter if you have access to the code or not.

        source available means the source is available on request and with restrictions to keep it private. doesn't matter if the software is free or not.

        • duckmysick 4 days ago

          This is what the Jargon File says:

          > [common; also adj. open-source] Term coined in March 1998 following the Mozilla release to describe software distributed in source under licenses guaranteeing anybody rights to freely use, modify, and redistribute, the code. The intent was to be able to sell the hackers' ways of doing software to industry and the mainstream by avoiding the negative connotations (to suits) of the term “free software”.

          http://www.catb.org/~esr/jargon/html/O/open-source.html

          I looks like open source means more that just ability to read the code.

          • jmcqk6 4 days ago

            There is no platonic definition for words that make it wrong to use them in a different way.

            Dictionaries are descriptive, not prescriptive.

            If someone uses a term like "open source" in a way that is clearly different from how you understand the word, that doesn't make them wrong. All it does it highlight a different perspective.

            You can attempt to tell them that they are wrong to use the term that way. It's changing the topic and distracts from the point, so if that's your goal, go for it. Most people don't react well to it. You can think that they should be okay with it, but people don't tend to react well to that either.

            it's your choice.

            • duckmysick 3 days ago

              I don't think it's wrong. I think it's confusing and creates unnecessary friction. Especially if the term is well-established in the profession or the community.

              • jmcqk6 3 days ago

                Does it really? I find I have a pretty common process, where I will hear something and it doesn't make sense to me, and then I pause for a moment to think, and I realize the speaker is using some word or phrase differently than I was expecting. I then understand what was trying to be said and continue the conversation.

                This is a daily thing in my experience, often internalized to the point I don't notice until reflecting later. It doesn't feel like friction to me. This is the unavoidable nature of trying to connect with someone using language.

        • linsomniac 4 days ago

          >I was around before that wiki page was written

          Ditto (first tech job was in '87).

          So I guess you are saying that you're aware that "open source" means a specific thing to many people in this field, but are going to use it in a confusing (to many) way rather than using the unloaded "source available"? You do you, but don't expect everyone to agree to switch from this fairly common usage. Makes it look like you're just searching for an argument.

    • solcloud 4 days ago

      that is exactly my meaning of open source but as you can see so many people disagree, but now I merged random license so it is 0K now I guess :)

      • DrammBA 4 days ago

        I'm glad to see you're not bothered by these weird hn folk, I've said this before but people like to think hn is better than reddit when in reality we have our own brand of toxic here

      • IdSayThatllDoIt 4 days ago

        You picked the best license, not a random one!

        • solcloud 3 days ago

          I hope so, but game will be now on categorized as pegi18 just because of license using strong language :D

  • ivanvanderbyl 4 days ago

    What would you call it? Source available?

    • tokai 4 days ago

      I would personally just called it a video game. Free and Open source a issue of copy right. If there's still full copyright (and there's copy right on everything published nomatter if it is explicitly claimed or not) with no license on a piece of software, it has nothing to do with open source.

      But source available would be the term to use if one wants to point out that the source is on github.

      • segmondy 4 days ago

        semantics, "source available" is for closed software that's willing to make source available to their customers. For instance, Microsoft windows is not open source, but if you're an important enough customer, they will make the source available to you. open means there's no restricting for you to read the code.

      • meiraleal 4 days ago

        Open-source game has a literal meaning.

        • tokai 4 days ago

          The code is not open source. It is not an open source game. This is not open to interpretation, as there is no license given.

          • shortrounddev2 4 days ago

            Why isn't it open to interpretation? Who made you king of open source software

            • franga2000 4 days ago

              Terms that have an unambiguous and widely-agreed-upon definition are simply not open to interpretation. The term "open source software" is a technical term and is defined by The Open Source Definition [0], which is accepted by the overwhelming majority of experts in software engineering and software licensing.

              [0] https://opensource.org/osd

              • shortrounddev2 4 days ago

                The Open Source Initiative is a hypocritical organization that tried to trademark the term "Open Source" and was denied because they don't control the term and have no stewardship over it. Your interpretation is not accepted by the overwhelming majority of "experts in software engineering" (whatever that means), and I don't know of any way to quantify your claim either. What you are referring to is most likely FOSS, which is a more rigidly defined thing. Open Source, to most people, is a colloquial term that simply means that the source is available to be viewed.

  • unethical_ban 4 days ago

    "Hey creator, it's important for open software to be properly licensed, otherwise there can be legal issues. <Insert link to open source license references>"

  • solcloud 4 days ago

    Yeah yeah yeah, I am hurting open source, my apology to open source

    • tokai 4 days ago

      [flagged]

      • thtmnisamnstr 4 days ago

        You could have solved this issue. Your coding fingers turned into complaining fingers. If you really had a problem, you should have opened a PR with a license instead of demanding that OP do it on your timeline.

      • Capricorn2481 4 days ago

        "Many hours later" is a great way to make it sound like a lot of time passed, but the creator said less than 24 hours ago they were open to adding a license and then several users accused him of essentially kicking puppies to death because it wasn't done yet.

        He expressed anxiety and unfamiliarity with adding a license he didn't understand. Not to mention multiple users started arguing over the best license, further highlighting why he shouldn't just trust random internet comments and actually look into it. You're going to harass him for it? Do you own his time for the next week because he made a post on HN? Because that attitude is way more harmful to OSS than what you're up in arms about.

        Furthermore, this is colloquially open-source to most people, and you're hung up on semantics. Anybody that needs to care about a license can look and see if one is there. If it's so simple to understand a license and add it to your project in such a short span of time, surely it's simple to check for the existence of one in the first place.

        • solcloud 4 days ago

          nicely written, thank you for kind words

      • bbeonx 4 days ago

        chill, be nice

    • lagniappe 4 days ago

      >Yeah yeah yeah, I am hurting open source, my apology to open source

      Not a great response. Do you know where you are right now?

      • solcloud 4 days ago

        Maybe I am just waiting for somebody to open PR for adding license cause it looks like everybody is lawyer these days

        • Vinnl 4 days ago

          Ah, well, if that's all: https://github.com/solcloud/Counter-Strike/pull/28

          (It's kinda weird, because to make a PR, I had to make a fork, and then I added the licence to my fork, even though I'm not allowed to pick the licence, but )

          • fluoridation 4 days ago

            It makes me want to start several PRs with conflicting licenses.

            • solcloud 4 days ago

              bring it :D now I thinks about suing anybody forking repo with licence change :D no seriously it is merged now so world is safe again :)

          • Capricorn2481 4 days ago

            They went with a more open license. Try to do better next time with your license choices. GNU is not nearly as open as the "DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE."

            https://github.com/solcloud/Counter-Strike/pull/27/files

            • Vinnl 4 days ago

              Glad they did, because now my fork illegally adding a licence is legal again. Phew!

              • fluoridation 3 days ago

                Just FWI, it's not illegal to add an incorrect license to a repository you don't have the rights to. It's simply a lie. The copyright notice is just a statement from the author, it doesn't per se define the terms under which the project is distributed. What defines them is the fact that it's the author who put the file there.

                • Vinnl 3 days ago

                  Heh, fair enough I suppose, though it's definitely not very nice to make people believe that I can give them permission to do things, when I don't.

      • mihaaly 4 days ago

        Do they know who they dare talking to?! That tone, scandal!! Should know his/her place the unrespectful puny fella!

wormlord 4 days ago

Open-sourcing this is awesome! What a great jumping off point for people wanting to do 3D game dev.

hauxir 4 days ago

Something I'd love to have is a version of counter strike 1.6 with open source assets.

Something similar to OpenArena for quake but for cs 1.6.

Could be built on top of https://github.com/Velaron/cs16-client

loufe 4 days ago

There are some seriously impressive open source games out there. One of my friend groups into gaming got me into BAR (Beyond All Reason) last year and it is seriously impressive in terms of depth, graphics, and optimisation. This part of the future I love.

  • klakierr 4 days ago

    Also discovered BAR couple of weeks ago and even though I'm not really a gamer anymore, and was never really into rts games, I've already have > 50 in game hours

    I was very impressed with the level of detail and meticulous implementation. The level of control and posible automation is high, I feel that it should reasonate with most tech oriented ppl

    If anyone wants to play my in game username is [ZWD]_jaan, just add me as a friend and I can intro you to the basic concepts (im still a noob tho), we can play a coop game or find a noob lobby :)

  • diggan 4 days ago

    BAR is pretty awesome indeed (make sure to check it out if you like games like Total Annihilation/Supreme Commander) and makes it really easy to mod the game via Lua. Seems to have a pretty large community for being a FOSS game too.

maxwelljoslyn 4 days ago

Forget FC '25: this is the football game I really want!

Good stuff, solcloud. Keep following your heart.

  • k4rli 4 days ago

    Except it is unfortunately american version of "football".

    In CS 1.6/GO there have been community versions of actual football but unfortunately CS2 has killed them off completely.

  • solcloud 4 days ago

    Yeah forget EA, this is football, thank you :)

de_elusive 4 days ago

There is also play-cs.com which is the real counter strike 1.6 in browser.

therein 4 days ago

You would think it would run in browser. Why are the clients packaged electron applications?

  • solcloud 4 days ago

    actually game can be run using any modern web browser with websocket (without needing to use electron), I just provide electron as it have better performance (nodejs supports udp so no websocket bridge is needed) and key shortcut like Ctrl-W do not close tab instead you move forward while crouching :)

    • modeless 4 days ago

      Ctrl-W is fixed in fullscreen, and WebRTC DataChannel provides UDP (both client-server and peer-to-peer). Check my port of Quake III: https://github.com/jdarpinian/ioq3, you can test UDP multiplayer and Ctrl-W live in your browser here: https://thelongestyard.link/

      • solcloud 4 days ago

        I am fox on fire so Ctrl-W is tab close for me :) but yeah, there are ways (hacks) to make it run in web browser "natively" but only to some extend, I mean you can for sure rebind ctrl-w and other stuff or use chromium, but for me currently real LAN party is playing on electron :) web browser version is for testing and developing (for me at least)

modeless 4 days ago

The client runs in Electron, but there is no web version? Why not?

  • beepbooptheory 4 days ago

    Just run `python -m http.server 4000` inside the www directory! Seems to be working for me.

    • modeless 4 days ago

      There should be a hosted demo at least. The web's big advantage is instant distribution with no installation on any platform. I think it's a shame to build using web tech and then throw away your biggest advantage by requiring platform-specific local installation.

      • solcloud 4 days ago

        there is indeed a web version like others mentions, I also provided a prebuild binaries for lots of os/arch at https://solcloud.itch.io/counter-strike-football (and anybody can open PR for more), for hosted webpage demo I can for sure hosted somewhere on public internet as can anybody else, so I will leave that as a optional exercise for a reader to host community server :)

        I think most users will build from source or use provided pre-build binaries

dfox 5 days ago

Making FPS game with Electron client and PHP server is an interesting choice of technologies to say the least.

  • munk-a 5 days ago

    PHP is a pretty strong language these days - don't knock it until you try it.

    There are definitely issues with getting fine grained memory control in a performant manner but for general processing it's pretty competitive.

    • kak3a 4 days ago

      Ditto. Today's PHP is not your what your grandfather used to use. It's a much matured and evolving language. Python only got so popular due to Google's use and AI. It's like the new Perl.

  • giancarlostoro 5 days ago

    I was unphased by Electron, but PHP for Counter-Strike? I'm hoping its using regular websockets.

  • solcloud 4 days ago

    thank you I guess, I started with php because of rapid development and TDD, but now you can transcode php to C++ or WebAssembly pretty easily, so using vkphp or once wasm socket will be in spec than it is free easy transcode (or using Emscripten), or second option since code is quite simple it will take like barely one week to rewrite it in c++ or other languages which is my plan once the game is future complete and stable (hopefully I will not have to develop my own language :D)

  • klaussilveira 4 days ago

    PHP is _fast_. That is a pretty good reason, specially for this type of game.

    • krapp 4 days ago

      PHP is fast for rendering websites, but I doubt it's faster than any other language a game this could be implemented in.

      I guess if the client is Electron, they're stuck with the web stack.

      • wiseowise 4 days ago

        > I guess if the client is Electron, they're stuck with the web stack.

        I don’t see any correlation.

oakesa 3 days ago

I came here for the cstrike and stayed for the 'open source' toxic popcorn. Please keep me in the screenshot when this gets picked up by all the news sites.

And great project.

  • solcloud 3 days ago

    we have a bit of both here

    thank you

camtarn 4 days ago

Having Counterstrike in the name of the repo and title of the game might not be the best idea, as it's a trademark.

It's also ... not an awful lot like CS at the moment. Mostly the size and complexity of the map.

  • solcloud 4 days ago

    maybe like a said I am not lawyer, I am just a peaceful person :)

    for audio/visuals the game is currently pretty basic because I am not wearing all the game development hats, and 3D graphics/audio/animation is not my favorite things (but PR queue is open if anybody is interested), but it can be scaled to more complex map, I actually convert old "real" dust2 map to this game a _year_ ago and record video of playing it https://www.youtube.com/watch?v=aIBVGZanVvU

    • ghosty141 4 days ago

      I think all he is saying remove the references to „Counter-Strike“ and you are all good! How about Sol-Strike? ;)

      • solcloud 4 days ago

        that actually sounds kinda cool, but do I have a permission to use it from you, or now anybody can trademark it so I have to be first to register in German with GmbH or smth :D

    • camtarn 4 days ago

      This is a much better demo! Thank you for the link.

      • solcloud 4 days ago

        thank you, no problem, I was recording videos as development was going to record progress

  • pbhjpbhj 4 days ago

    Trade mark law usually requires that a mark is not descriptive - counterstrike is a dictionary word that describes fighting back against an attacker. Seems perfectly fine to use in any fps game.

    Can't see how that trade mark could stand against a challenge (in UK/EU)?

    See eg Art.4, Art.7(1)(c) of EUTMR.

    IANAL, these are my personal opinions and unrelated to my employment.

    • camtarn 4 days ago

      "Counter-Strike, Counter-Strike 2, CS:GO, and their respective logos are trademarks and/or registered trademarks of Valve Corporation. © 2023 Valve Corporation, all rights reserved."

      I am also not a lawyer, but I would not like to step into a trademark dispute just because it 'seems perfectly fine'.

      Albeit in this case you're most likely to just get a cease and desist rather than getting sued.

      • pbhjpbhj 3 days ago

        Yes, you wouldn't want to use "Counter-Strike" but legally they can't stop you using "counterstrike". As you intimate, the legislation probably doesn't matter if you can't afford the legal process.

      • solcloud 4 days ago

        ohh, date with Gaben incoming

    • ruthmarx 3 days ago

      counterstrike by itself might be OK although not used as branding, but none of the stylized forms could be used - that's my understanding at least.

mclau156 4 days ago

now re-make it in Godot?

  • solcloud 4 days ago

    If anybody is interested in in go for it, you can use server from repository and only code client side in godot than purchase bunch of cool assets and AAA game is born