Giter Site home page Giter Site logo

battlemaniacs-restoration's Introduction

Battletoads in Battlemaniacs - Restoration Project

This project aims to restore most of the missing content of the Master System version of Battletoads in Battlemaniacs (or just Battlemaniacs) to make it more like the original SNES version of Battletoads in Battlemaniacs.

โžก

Battlemaniacs for the Master System is an unfinished port of Battletoads in Battlemaniacs for the SNES, which was developed by Rare and published by Tradewest. The Master System port was licensed by Virgin Interactive, and development was tasked to Syrox Developments. Virgin intended to release the game in Europe in mid 1994, copies were even sent to several gaming magazines which printed reviews, but the release was cancelled at the last minute. Tec Toy rescued the shelved port in 1996 for a Brazilian release through an agreement with Virgin (this also included another shelved game by Virgin, the Master System port of Fire & Ice). However, despite being a game which can be completed, the Master System port of Battletoads in Battlemaniacs was left in an unfinished/unpolished state with several aspects remaining either in placeholder or missing state.

This project intends to restore most of the missing content by rewriting both the music/sound engine (which was converted to PSGlib) and the game opening/ending/intermission screen code to allow the addition of new content in these fields.

The main aims of the project are:

  1. Restore all the missing game music.

  2. Restore the incomplete intro and the missing ending sequence.

  3. Restore all the SNES messages for the intermission scenes.

  4. Restore artworks from the SNES version.

  5. Some other minor fixes/additions.

At the moment the project does not intend to modify the level themselves, despite the overall feeling that some of them are unpolished/unfinished compared to the original SNES game. However, that possibility is not completely discarded, and anyone interested in investigating that and making it possible will be welcomed.

Current project members:

  • Maxim - programmer

  • Pyron - artist

  • David Bonus - composer

  • Wesker - coordinator

Former project members:

  • Motavian Raider - composer

battlemaniacs-restoration's People

Contributors

alwesker avatar maxim-zhao avatar motavianraider avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

battlemaniacs-restoration's Issues

Text font

Referencing to this on #6

_"Take a look at the most recent version - I have rearranged things and now we can have 370 tiles per screen, so the SNES logo fits easily. In addition, I have produced an entirely bitmapped title screen using proportional width fonts which allows us to fit text in more comfortably. What do you think?

I think my version is a proof of concept - a real artist can do a much better job. It's also worth considering if we should remake the preceding screens in the same way - all the text could fit in a single screen. Static starfields are an option too. It's (ab)using our copious free space, we are spending a few KB for every such screen."_

Do you think it would be possible to change the text font of the game for one more closer to what you intend to use for these screens? To make for text consistency. Plus, that text font that Syrox Developments usually used for some of their games (The Jungle Book uses it too) is maybe a little ugly. Using a font similar to what the other Battletoads games used (including the SNES version of Battletoads in Battlemaniacs) may be better.

imagen

imagen

I have to see if I find accurate rips of any of these text fonts. No luck looking for them at the moment. If not, then maybe we can use similar ones are they look like pretty standard text fonts.

Fix the incorrect music usage (including new tracks)

Don't forget to add the correct level music table for $6D31.

Since we are still lacking two level musics, I opt to leave those temporarily as 00s, and therefore this is the current sequence:

.db $0D $15 $1B $03 $23 $23 $23 $23 $00 $00 $02 $1B

Music resync for both 50hz and 60hz outputs?

Would be possible to make the music engine to resync if it detects NTSC/60hz at boot? So the music is not speeded up when played at NTSC/60hz. This Master System conversion was designed with PAL/50hz in mind because of its intended European release origins and so the original Krysalis music engine didn't bother with resyncing. TecToy didn't care about this fact either when they released the shelved game in Brazil a couple of years later. There are several games which detect the Hz output difference at boot and resync the music accordingly. Does PSGLib allow this to be implemented?

Misplaced intermissions

The last release added the intermissions and they look great (even though the T Bird artwork got an update to remove the brown shade of the mouth that looked like a chocolate stain, please change it to the last updated version) and the randomed message work perfect too. But from the snake levels on, the intermissions are misplaced and this causes issues further on in the game. The snake levels don't need intermissions between themselves because those were an unified level in the SNES version, but the Master System version consider them as separate levels. Since the intermissions are showing before they should, when you get to level nine you get the ending intermisison beforehand and the game glitches, and then the game shows glitched intermissions between levels.

According to how the game is structured, this is how the intermission sequence has to go.

Level One (Ragnarok Canyon) end with Intermissions 1
Level Two (Hollow Tree) end with Intermissions 2
Level Three (Bonus Level 1) end with Intermissions 3
Level Four (Turbo Tunnel) end with Intermissions 4
Level Five (Snake Pit 1)
Level Six (Snake Pit 2)
Level Seven (Snake Pit 3)
Level Eight (Snake Pit 4) end with Intermissions 5
Level Nine (Bonus Level 2) end with Intermissions 6
Level Ten (Roller Coaster) end with Intermissions 7
Level Eleven (Dark Tower) end with Intermisisons 8
Level Twelve (Dark Queen final boss) end with Intermissions 9 or the Intermissions that go prior to ending

Possible to play as Rash as player 1/controller 1?

The Master System conversion of Battletoads in Battlemaniacs inherits and aspect which RARE defaulted for both Battletoads for the NES and Battletoads in Battlemaniacs for the SNES. In these both games you can play as one of two possible Toads while the third one is captured and non playable. Battletoads for the NES assigned Rash to Player 1 and Zitz to Player 2, while Battletoads in Battlemaniacs for the SNES assigned Pimple to Player 1 and Rash to Player 2. The Master System conversion respects the SNES procedure, and Battletoads in Battlemaniacs actually has different looking graphics/animations for each Toad which make them distinctive each other (while Battletoads for the NES relied on the same but color swapped sprites) adding to gameplay. So in a 2 player game, Player 1 will always be Pimple and Player 2 will always be Rash. But in a 1 player game, if you play with the first controller you always will be Pimple, and if you want to play as Rash in a 1 player game then you have to use the second controller or switch ports. That's easy to do either on a Master System or on a Mega Drive, but if you play the game on an unmodified Game Gear you'll find yourself stuck to play the game as Pimple. I don't know if it would be possible to add a simple workaround to play as Rash on a 1 player game with the first controller. Maybe it would be possible to add something like, if you start the 1 player game with button 1 you'll be Pimple while if you start it with button 2 you would be Rash. This would be a simple way which wouldn't alter too much the other aspects or the game (adding a proper player select screen would surely be huge work) but is it that simple to implement?

Pause music

The SNES version has a small jingle played when the game is paused, similar to the famous "toad rap" of the NES version of Battletoads.

https://www.youtube.com/watch?v=JlO9V8wPVx8

Would it be possible to implement it? Even if it's a very short tune, it's best to know if it can be added (I don't know what the Master System version does when pausing) before telling @sanchez-david if he has to do it or not.

Improve the game selection Pimple/Rash artworks

The Master System versions had some redrawn artworks for both the Battlemaniacs logo in the title screen and Pimple and Rash in the selection screen (these artworks also appear in the continue and game complete screens). It may be possible to replace these with reconverted versions which are more accurate to the SNES originals. Converted artworks for Pimple and Rash are already in place in src/images/Pyron which whould be compatible tile/color wise. There's also a converted artwork for the Battlemaniacs logo which unfortunately seems to hit the maximum tile limit (it hits 270 tiles). If it's difficult to repurpose this suggested artwork, another possibility may be color readapting the existing Master System logo (which is a little drab color wise) to something closer to the suggested SNES converted artwork.

Pre-title sequence with starfield

I've made a version of the intro sequence which is entirely bitmapped. With some tricks this means we have a single "legals" screen, stars throughout (not moving), and the title screen is mostly done (apart from the bottom line of text). Can you give some feedback?

Fade outs

I noticed the intro scenes have now a fade out effect. It's cool and it makes for a better transition. But the intermission scenes don't have them. Can it be implemented for those too?

looping vgm problem

Hi, sorry for holding everyone up, I've been preoccupied with other music related things. I finished the rollercoaster track but when I tried to convert it to looped vgm with vgmtrim it couldn't open the file. I logged the vgm with sneventracker. Does anyone know what I'm doing wrong? Its my first time doing something like this. Thanks.

help

T. Bird text field is cut

For some reason, the text field of the T. Bird image in the intermission appears cut. I remember this appeared right at first, but since I don't know which revision of the hack, it now appears cut. Here's an example of how it appears now.

Battletoads in Battlemaniacs (Brazil) (Restoration Hack) (Beta)-12

And this is how it appeared before and how it should.

Battletoads in Battlemaniacs (Brazil) (Restoration Hack) (Beta)-09

So, what's exactly the issue here?

What's left to do for reaching v1

Musics

-Replace "T. Bird v1.vgm" with "T. Bird v2.vgm".

-Add "Last Battle (Boss).vgm" and place it in the last boss level, that is, in the last music slot of $6D31.

.db $0D $15 $1B $03 $23 $23 $23 $23 $05 $04 $02 $XX <- here

-Make the Normal and Hard endings start with "Victory" instead of "T. Bird" (I suppose this is because of the first two scenes with random dialogue being treated as intermissions scenes, see how it's done in the SNES version: https://www.youtube.com/watch?v=UbExF4wHp8A). As it is now, the random dialogue of the ending starts with "T. Bird" and then changes to "Victory" when it switches to the fixed ending scene (starting with "Err..." dialogue).

-Make the "Game Complete" screens to carry on with the corresponding ending music ("T. Bird" on Easy, "Victory" on Normal and Hard) instead of switching to the title screen music like it does now.

-Upload to GitHub the source file (it should be a DefleMask format file) provided by @MotavianRaider of "Roller Coaster.vgm" to see what's wrong with its 50hz/60hz inconsistency (it's supposed to be a 50hz file but it's playing at 60hz in the game). Similar issue is happening with "Dark Tower.vgm" (we have the .snm source file for this) and "Bonus Stage 2.vnm (this is also a Deflemask format file but we lack the source for this, @MotavianRaider apparently lost it).

-If possible, program a GitHub system to easily replace the already existing musics, similar to the one that was done with the logo/title/opening/ending screens, so maybe in the future some musics could be replaced/enhanced with other versions (there may be a possibility with Khaos Mountains). This could also make easier to explore possible solutions to try to resolve the aforementioned 50hz/60hz inconsistency issue with some of the current musics.

Screens

-Downgrade (same as it was done with the Rash Game Complete art) and add this image to the Pimple Game Complete screen.

https://user-images.githubusercontent.com/41370804/64984818-e133c700-d8c3-11e9-801d-6aec141a337a.png

-Downgrade (same as it was done with the Rash Game Complete art) and add this image to the Pimple & Rash Game Complete screen. This one may also require to reformat this Game Complete screen, as it was previously delimited for two smaller letterboxed arts.

https://user-images.githubusercontent.com/41370804/70394204-f156d080-19f2-11ea-929b-5762b09993b7.png

-If the above image is too problematic for the Pimple & Rash Game Complete screen, we can alternatively use the Battletoads badges which were reserved for a possible rewrite of the Credits screen which maybe won't be ever done.

https://raw.githubusercontent.com/maxim-zhao/battlemaniacs-restoration/master/src/images/Pyron/Artwork%20Credits%20Badges%20SMS.png

https://user-images.githubusercontent.com/41370804/57557178-6c7ed800-7379-11e9-95ab-36bc57ce5400.png

-Add a "intro 00 screen" of sorts for the intro, which should come after leaving the title screen idle and before the "The 'Toads are at the Gyachung-La Fortress", or move all the intro screens while adding a new one at the end so another screen is added as "intro 01 screen". The idea is to add a sort of screen like this as a transition between the title screen and the actual intro, so the result is not so abrupt as it is now.

https://user-images.githubusercontent.com/41370804/71558486-44510000-2a54-11ea-9404-c82e70376760.png

Pre-title modifications

  • Correct Zits => Zitz
  • Add "Battletoads In" before the title screen
  • Anything else not matching the wanted script

Should we just reimplement it using the script engine?

Discord Server!

Not really an issue but I wasnt sure where else to put this. I have made a discord server for the project! If you dont know what discord is, its basically a superior irc chat. I would love to get to know some of you more! Heres an invite:

https://discord.gg/VzxSjXU

Bad ending

So the good ending is now implemented. What should we do with the bad ending then?

The SNES version has a gameplay mechanic in the ending in which the Battlecopter pursues the Silas Volkmire ship and you asume the control of the Battlecopter. You have to hit the ship with three missiles within a time limit, and the crosshair has a bouncing movement which goes more quickly after each hit so it's more difficult to hit him right each time. If you manage to hit the ship with three missiles on time, you get the good ending. If you don't and time's up, then you get the bad ending.

Maybe the gameplay mechanic could be implemented some day even though it seems to much ambitious to do it because it would probably require coding a sprite engine, so in the meantime maybe we can come with a different alternative solution with static screens to offer the player both the good ending (already implemented) and the bad ending of the original SNES versions.

My proposal is to follow what games typically did back then with the difficulty levels. We have easy, normal and ending. The game is not as hard as the SNES version, in fact some of the levels like the Roller Coaster and Dark Tower ones are ridiculously easy compared to the difficulty of the originals, so maybe forcing the player to take the effort of playing the game in hard difficulty (which has no continues) would make a challenge motivation to the player to try the hard mode, something which as of now it's not a real difference compared to completing the game on easy or normal. And since easy difficulty gives a lot of continues and it's, that could be turned out into a sort of practice mode which doesn't given any of the ending, nor the bad (which would appear in normal) nor the good (which would appear in hard).

So, what do you think? Also, we can decide if this would be either a v1 or v2 improvement.

Intermissions

  • Replace with out own script engine
  • Implement random selection

Corrupted intro graphics on Master System and Game Gear hardware

Only emulators and Mega Drive hardware are currently handling the new intro graphics well. Master System (at least a Japanese Master System 1) and Game Gear show corrupted/garbled graphics. This seems to be related to the speed at which the graphics are loaded.

Sprites

the characters sprites looks really bad, they have used alot of dither..
but the sprite is small and you understand nothing..
also i notice they already alot of colors..
only pimple uses 10 colors, so we can do a better job.

https://www.spriters-resource.com/resources/sheets/30/33111.gif

So you guys want change them? If yes, what the limitation for each sprite... colors usage in the screen and etc..

Credits with background

These cool badges artwork from the SNES version, deserve to be on the Master System version somehow.

imagen

In the SNES version, they are contained in a flag screen which the Battlemaniacs logo. This screen is not present in the Master System version as it's just a screen with additional copyright texts not present in the pre-title screens of the SNES version, but we already have all the needed copyrights in the pre-title screens already so it's not necessary in its original aim.

imagen

So it seems the best option is to put the badges alone (the whole flag seems to be too much for the Master System resolution, plus maybe the Battlemaniacs logo will give tile problems) at the background of the credits screen, even though that would need rewriting the credits screen code, so it's put as a v2 priority.

There's also the thing of putting them in a starfield background of not. To tell you the truth, in this case I'm more inclined to leave them in black background as I think they would stand more and wouldn't make the credits screen too overloaded, but you can voice your opinions of course.

Pimple and Rash artworks on the Game Over screen and Game Completed screen

Master System version have the same Pimple and Rash artworks used for three game instances: Selection screen (comes after title screen), Game Over screen and Game Completed screen.

Selection Screen

imagen

Game Over Screen

If Pimple dies

imagen

If Rash dies

imagen

Game Complete Screen

If Pimple completed the game

imagen

If Rash completed the game

imagen

If Pimple and Rash completed the game

imagen

SNES version use those Pimple and Rash artworks (which already have converted artworks from the SNES version in Pyron folder) for the Selection screen only. Game Over screen uses completely different artworks for both of them (it's a larger artwork given than in the Game Over screen, only one toad can be displayed at time, not the two of them jointly) and there's no Game Completed screen as such on the SNES version.

Selection Screen

imagen

Game Over Screen

If Pimple dies

imagen

If Rash dies

imagen

The ideal thing would be having the Master System version having the SNES Selection Screen artworks (which are already converted in Pyron folder) on the Selection Screen and Game Complete screens, while the Game Over Screens would use the SNES Game Over Screens artworks (those would have to be converted). The Game Over Screen artworks are very large in width, but since you are never going to get both Rash and Pimple together on the Game Over Screen (since they can't both die at the same time, it has to be one or another), the two artworks will never appear placed at the same time like they cand do on the Game Complete Screen in case you complete the game with the two characters. In that situation, since the Selection Screen artworks from the SNES version are going to appear there like they do now and they are still very similar in length/width to the Master System ones (but better drawn), it's not going to be affected by the fact of the two appearing individually or at the same time.

Glitches in SFX

By the way, I just did some test on the console and the implementation of sound effects seems to be complete but there are some weird sounds getting in the middle of the sound output. I'll try to explain/detail.

Generally, when you perform an attack (either on ground or on air), a dinging sound gets on the middle. It's especially noticeable with attacks on ground but the attacks on air are faulty too. Sometimes, at very rare occassions, the punching sound comes right but normally the dinging goes along. And other weird noises are also noticeable when hitting enemies.

In certain levels, like the Turbo Tunnel when you die or the snake levels when a snake go into a hole, there's also weird sounds being played. The snake sound is like some sort of bumping sound and it's very noticeable.

Other than that, the sound implementation seems to be fine until I notice something else in a second playthrough.

Reset glitch interconnecting the snake levels

I just noticed this, but there's a small glitch which resets the game when you complete any of the snake levels except for the last one (that is, levels five, six and seven in the level select). Instead of taking you to the next snake level, the game resets. So as of now, you can't complete the game in one sitting.

I believe this must be because of the modified game cutscene code. The game must be looking for a cutscene and resets the game if it fails to find one. And only the first snake level has a cutscene, there's none of them in the following ones. This is because, even if the Master System version accounts the four snake levels as different levels, story-wise/plot-wise they are all part of the same thing, so the latter ones didn't need cutscene (in the SNES version the transition between the snake levels was much more fluid) and therefore that cutscene detection must be skipped in these particular levels.

Better images

Images are currently straight conversions from the SNES game, cropped to 248px wide and converted using RGBQuant-SMS (dithered, lossy) or just posterization. We need an artist to make them look good!

Title screen music

Right now, the title screen lacks any music. You only get it if you come from a Game Over and it's because the Game Over screen triggers the title screen music, but at boot you don't get anything.

The original Master System version had the approach of loading the title screen music when the title screen appears (so the pre-title copyright screens are silent) and if you let the game loop the intro and back to the copyright and title screens, it would reset the music in the title screen. You can see it here.

https://www.youtube.com/watch?v=pIXDlv9y8AQ

I wonder if this approach can be changed. Basically, making the game not reseting the title screen music when it goes on a loop and goes back to the title screen after coming from the intro. I feel reseting the title screen music there hampers the music, it would be much better if all the demo sequence would be left with the music uninterrupted no matter how many times the game loops to the title screen. You can see this approach on Battletoads Double Dragon for the Mega Drive.

https://www.youtube.com/watch?v=brE-TiwZpo8 (see from the beginning and until 2:49)

Also, the SNES version of Battletoads in Battlemaniacs actually starts the music playing during the pre-title screens and before the title screen appear. Only the Tradewest logo is silenced. But this is because in the SNES version that screen is static and then the music starts playing when there's some movement on the screen (which the Master System version lacks) so maybe in our case the music could start playing at boot.

https://www.youtube.com/watch?v=jRioxNkfM4I

So, what do you guys think? Making the title screen music starts playing at boot or when the title screen shows the first time? And making the title screen music being restarted in the title screen like the Master System version does or letting it continue uninterrupted?

Intro 06

I placed an updated version of Intro 06 with a little better gradient on the floor. Please add it to the game.

Ending script

Should be a matter of repurposing the intro engine, but I didn't disassemble to find its location yet.

Logo for the title screen

So, given this game has two different logos (a "Battlemaniacs" logo on the SNES title screen and a "Battletoads in Battlemaniacs" logo on the SNES boxart), question is which one we should use as standard hack logo and maybe leave the other one for a possible optional patch to make everyone happy.

The "Battlemaniacs" logo from the SNES title screen.

imagen

And two adapted versions of the "Battletoads in Battlemaniacs" logo from the SNES boxart:

imagen

imagen

Regarding the two Battletoads in Battlemaniacs logos, one uses a SNES Battletoads logo (from Battletoads Double Dragon) as a basis while the other uses a NES Battletoads logo (from Battletoads). I like the SNES one more, it stands out much more and the Master System seem to be able to handle it. Pyron, on the other hand, likes the NES Battletoads logo more, although I think it's looking rather limited for what a Master System can offer color/palette wise. It would be good for a NES version, but I think a Master System version can benefit much more for the another one which has been well converted by Pyron anyway.

And comparing any of the Battletoads in Battlemaniacs logo with the simpler Battlemaniacs logo, maybe it may seem that the simpler Battlemaniacs logo is a better choice, but it's incomplete. It would need a simple "Battletoads in" letter appendix on top of it maybe (I think the "Presents Zitz, Rash, and Pimple as the Battletoads in" in the preceding screen doesn't convince me, we are probably going to return to the original "Presents Zitz, Rash, and Pimple in" with that one). The "Battletoads in Battlemaniacs" logo solves that problem, but maybe isn't as fancy looking.

Even if one of these possible logos is chosen as standard, I think the other one s shouldn't be discarded but be offered as optional small patches, so everyone is happy that way.

Intermissions for Continue and Game Over sequences

The last version has the Game Over intermissions, which are the ones which follow the same pattern of the level intermissions in which the Dark Queen "asks" and Professor T. Bird "answers", swapped in place of where the Continue intermissions should be, which is just Professor T. Bird taunting you (for example, one of them is the one that says "I can't believe what's happening! Even I could have blablabla"). I believe that was ok in the previous version.

There's two possible patterns that could be set for this. One that uses the basis of the Master System version patten (which had a single Continue intermission and no Game Over intermission) but expanding it with the rest of the SNES pattern, and one that mimicks the SNES version. Any of both would be fine, we just would have to agree which one is best or which one would be easier to implement.

The Master System+SNES version pattern would be like this. When you die your last life, there should appear one out of four (picked at random) Continue intermission screens with the Professor T. Bird taunting you, and then follows the Continue screen with the countdown. If you continue the game, nothing else happens and then you resume the game. If you don't continue the game (or in case you get a Game Over due running out of continues), then it would follow one out of four (picked at random) Game Over intermissions with the Dark Queen "asking" and the "Professor T. Bird "answering", and then the game would reset. See how the Master System version works (but add the Game Over intermissions after having a Game Over, instead of skipping stright to reseting the game) in these videos:

Continuing the game

https://www.youtube.com/watch?v=vQATCGJJ7SA (see 3:05)

Getting a Game Over

https://www.youtube.com/watch?v=aFAs3pmeyDU

The SNES version pattern would be like this. When you die your last life, there should appear the Continue screen with the countdown. If you continue the game, one out of four (picked at random) Continue intermission screens with the Professor T. Bird taunting you, and then you resume the game. If you don't continue the game (or in case you get a Game Over due running out of continues), then it would follow one out of four (picked at random) Game Over intermissions with the Dark Queen "asking" and the "Professor T. Bird "answering", and then the game would reset. See how the SNES version works in these videos:

Continuing the game

https://www.youtube.com/watch?v=U8zamvkZnW8 (see 10:17)

Getting a Game Over

https://www.youtube.com/watch?v=SLZS3fUg06g

In this comparative video of the Master System and SNES version you can also see (at 7:55) how both version work when you enter the Continue screen and decide not to continue. These ones also show the transition to reseting the game in both versions.

https://www.youtube.com/watch?v=Q0fsKHiAfBA

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.