Posts by Beta

The server was closed on April 2nd, 2023
https://pwmirage.com/forum/thread/342-we-are-closing/

    With the editor in place now we can have a continuous flow of new content made by the community, only waiting to be reviewed and approved. Hence we can have a chance to live in this cruel world of private servers. However, that doesn't mean the "development" on the server is done. We keep raising the bar by hacking the game and adding various quality of life improvements to it. PW Mirage uses an old, classic PW version on purpose, but it's not meant to stay in the past. We believe later PW versions evolved the way they did basically for 3 reasons:

    1. common inconveniences reported by the players
    2. keeping the players engaged with the content
    3. maximization of profits for the company

    The modifications made because of #3 like R9 gear can be simply ignored here. We're enthusiasts. We do it for love, not for money.

    On the other hand, modifications made because of #1 and #2 shouldn't be ignored. Not even mentioning new dungeons, take auto-pathing for instance. It was too boring for people to fly from one point to another over and over. Other games had auto pathing already, so this one should have too, right?


    It's certainly a solution to the problem, but not a very good one. If the game is too boring to play, how does adding a bot that plays for you make the situation better? (That's basically what auto-path is) Is there a better way to solve the problem? What if we made flying faster instead. ...So that's what we do in PW Mirage. We look at the obstacles the game throws at the player and try to minimize them or even get rid of them, possibly just like PWI did, but without the priority on maximizing the profits. Gameplay comes first.


    Nevertheless, the new PW definitely excels in some areas, like extra dungeons, ability to share items in chat, or 10-person squads. Those are some Quality-of-Life features worth having that we can't easily backport to our version. They, themselves, are a good reason to update the server to a newer PW version. But there's one more reason to stick to classic -> The technical mess in newer PW versions


    So are we a true classic server? No, I don't think so. PW Classic died in 2009. It was good while it lasted, but it's no more.
    We will always be a 3-race server with no r9 gear and no p2w packs, but we will develop in a completely other direction.

    From the technical side, PW code and data files are a mess. The more features PW had, the more mess there was. Some features are mutually exclusive, some are duplicated, some configurations of quests just don't work. Since we code the web editor ourselves, we do care about those things. Take quest AI trigger for instance. A quest can spawn or despawn monsters once started/completed/failed, and it does that by having trigger IDs coded within the quest structure. The trick is, the IDs are map specific. ID 10 on the FC map can spawn a boss, ID 10 on the main map can start the snowmen event. The quest doesn't specify which map's trigger to use, but uses the current player's map instead. It seems fair enough, but is fairly problematic to handle in the editor. - because we don't want to deal with any numeric IDs there, only specific triggers - but we don't know which one to use.

    What's more, later PW versions wanted to spawn monsters via quest at any map (e.g as a result of using a consumable item - which works by just activating a quest that's immediately completed). They added a new, per-quest list of monsters to spawn. In the end, a quest could spawn monsters either by activating a trigger on the current map, or by specifying monsters in that list.

    It's actually reasonable to add such list, but the previous trigger ID should be then removed, and all existing quests should be converted to use the list instead. That is extra, unnecessary work though, so it's no surprise it was not done. This left us with a burden of having multiple ways to achieve some functionality. Coding the editor for all those ways is extra work too. So that's an another reason we stick with the good old PW 1.3.6

    The editor is mostly usable now, so let's think what needs to be done before we can consider a re-launch. (No wipes, just "marketing" and support/continuous development).

    done:
    - patcher: add quest parsing & saving (we need to bump their XP)
    - patcher: update server IP list automatically (to switch between test and production servers)
    - patcher: download additional .data files if necessary
    - move patcher server to pwmirage.com
    - server: bump server rates (from x1 to ~x1.5) (bumped all but resources/mines - those will have to be edited one by one in the editor)
    - editor: implement project previews for the rest of object types -> they're very limited now, but at least they show all changed objects
    - the previews were reworked completely, the review process is now fully implemented
    - gs_patcher: apply gs changes in a cleaner way
    - editor: add quest editor (we probably won't get away without this. It's needed at least to fix some of the below points) done!
    - client: finish up "lag removal" changes I have shown long ago. Make the client send more movement packets
    - web: view player's inventory, possibly edit it?
    - server: fix head hunter (need testing)
    - server: fix crazy stone (need testing)
    - server: fix TT3 bosses insta killing everyone (need testing)
    - editor: finish up the update process, make sure the browser doesn't cache any code for too long
    - fix registration/account management (it wasn't used and got broken at some point)
    - web: show full player logs w/ searching and filtering (we collect logs, but don't have a website to display them yet)
    - patcher: apply patches to any .pck file
    - server: re-add projects from current version
    - server: recreate old projects which didn't get merged (like cheaper arrows from Satine )
    - server: fix attendance q rewards (not usable atm)
    - web: make voting less restrictive (add points even if the vote didn't count)
    - web: add vote coins and a vote shop
    - server: prepare a replacement for dragon orbs exchange (it won't be added back as is)
    - server: fix some cube rooms being impossible to complete
    - server: adjust supply stash rewards, e.g. remove perfect hammers

    to do:
    - web: add GM panel for spawning items, banning people
    - server: figure out how to add expiration date to items that people have already obtained

    deferred:
    - server: bump movement speed of mounts (-> everyone gets a free 11m/s mount for now)

    12.06.2020 done:

    * made forum posts more compact, they take less space now

    * added project preview inside projects' thread

    13.06.2020 done:

    * projects with unread comments will now a bold title in the project list

    * fix object diffs sometimes showing twice when switching tabs very frequently

    * fix previewing some older projects (e.g. Dragon orbs wHiTe)

    * show "No changes" box on empty projects

    * fix misalignment/overlapping of +/- lines of wrapped text

    * purge browser cache on scripts and resources on every update so that everyone always uses their latest version

    It took me a while to figure out - there's actually nothing wrong with the editor nor the preview. berrygal12 you just modified an existing recipe #1744 to yield do-all cards, but that recipe is used in many different recipe lists as "?".


    The editor could use an enhancement to create a new recipe in specified slot on the list, that's something to be added in future,

    The following is recreated from github log (https://github.com/pwmirage/editor/commits/master). There was a lot of pathfinding and performance optimization on the way. I can say all of those features took more than a day to implement, so the date only says when something was finally ready.


    21.05.2020 done:

    * make switchable tabs in recipe lists


    27.05.2020 done:

    * finish up recipe preview, show mats/target items


    28.05.2020 done:

    * add npc diffs

    * blur non-modified recipes in a recipe list


    31.05.2020 done:

    * add npc goods preview


    02.06.2020 done:

    * add left side panel with changed objects list


    03.06.2020 done:

    * add all modified items tab

    * show npc spawner diffs


    06.06.2020 done:

    * allow expanding left side panel to show more than 9 objects


    08.06.2020 done:

    * add green dots on newly added recipes

    * a lot of QoL fixes

    The process of merging a project is simple, but it still needs to be described.


    Quoting the main page on pwmirage.com:

    Quote

    [...] A community member makes changes in the editor, then with a single click of a button publishes those to broader audience. Next, the changes are discussed on the forums and eventually, when approved by the administrator, they land directly in game


    Each project has an associated forum thread for discussions and new updates. On the project list, you can click either the project title or "Read more" button at the bottom to see the thread.



    In order for the project to get merged it needs to be approved by at least two maintainers and the status is tracked with labels visible in top-right corner. The are 4 possible states:

    Usually the first maintainer to review a project will give it the Approved label, then the second maintainer will change it to "Ready for testing". The project in this state will be verified on test server and if there are no problems it will be merged to the game. At any point before merging, any maintainer can change the status to "Needs changes", describe his concerns with the project, and potentially ask the author to update it. Then, the review process restarts.


    You can search projects by status with the "Filter" button in the top right corner of the project list page.


    I can see in the project changelog you did modify mats required to craft all of those, but it was reverted later on. Another editor issue, sorry! I'm trying to get to the bottom of this.

    I can see you made the items tradable, but something reverted them back to the original state soon after. I guess there's a bug in the editor? Let's keep this on hold for now

    It's been two months since the server launch and we haven't seen any substantial updates since. There's been a few critical maintanace things to be done in the first few weeks (described here Roadmap), then I moved my focus entirely to implementing a proper project preview. Since none of us was able to review any projects, nothing was being merged into the game. There used to be a preview functionality for any project at launch, but it was very basic and proved to be useless for reviewing any minor changes - It was visible right away when someone added a new NPC, but changing a single recipe could easily go unnoticed. And it did. Some changes were slipped in to the game without everyone's agreement.


    The goals for the project preview were clear, but writing it revealed a lot of technical problems. Previews had to be embeddable on the forum so they had to be written in a slightly different technology. I wasn't very familiar with it and so I missed all my deadlines, but now here we are with the previews finally ready. If you haven't seen them, check out Mirage Editor Content

    The pace should get faster now.


    Let me also summarize a few changes we had within this month. First, Escanor is no longer a maintainer. He's been kicked out because of overusing his privileges. Then, Heliodor and Inferno joined as GMs. Congrats! We don't have specific duties for specific people, just the regular QoL stuff. Lastly, I retire from making any gameplay decisions. I didn't have to follow the community in the past few weeks and I think it's better for us all if I stick to developing the tools only. I would like to announce that we have foxi taking over the role of gameplay overseer, the main decision maker, and the person to have the last word when it comes to game changes.


    Congrats foxi, and thank you everyone!

    16.05.2020 done:

    * fix preview data format so that it can be rendered more easily

    * start showing real data in the preview pages


    to do:

    * show all other objects in the preview (changed goods, items, npcs, npc spawns, and singular recipes)

    * generate a static preview for all published projects so far and make it public